平方和

bitset可以开到1e6左右
int n;
pii a[505];
void solve(){
cin>>n;
rep(i,1,n)cin>>a[i].fi>>a[i].se;
int cnt=0;
vector<bitset<1000001>>f(n+1);
f[0][0]=1;
rep(i,1,n){
rep(j,a[i].fi,a[i].se){
f[i]=f[i]|(f[i-1]<<(j*j));
}
}
cout<<f[n].count()<<endl;
}

浙公网安备 33010602011771号