【CodeForces】[598A]Tricky Sum
挺水的一题
先公式求1~n的和
然后依次减去2的i次方
直到2的i次方大于n
#include<stdio.h>
int main() {
int T;
scanf("%d",&T);
while(T--) {
int n;
scanf("%d",&n);
__int64 res=(__int64)n*(__int64)(n+1)/2;
int t=1;
while(1) {
res-=t*2;
if(t>n/2)
break;
t*=2;
}
printf("%I64d\n",res);
}
return 0;
}