Problem - D - Codeforces
1.数学公式化简,一些非对称折半类问题,可以通过扩大范围为全部处理(尤其连加号)
2.n个二选一指数级求和最值,可以用bitset记录可能有的情况,下标作值
#includeusing namespace std; typedef long long ll; int n,a[105],b[105],t; ll ans=0,sum=0,s; bitset<105*105>bs; int main() { scanf("%d",&t); while(t--) { scanf("%d",&n); ans=0,sum=0,s=-1; for(int i=1;i<=n;++i) { scanf("%d",&a[i]); ans+=a[i]*a[i]; sum+=a[i]; } for(int i=1;i<=n;++i) { scanf("%d",&b[i]); ans+=b[i]*b[i]; sum+=b[i]; } bs.reset(); bs[0]=1; for(int i=1;i<=n;++i) { bs=bs<



