题目链接
题意:求出1-n的和,但是要去掉是2的整次幂的数
解法:直接模拟即可
#include<bits/stdc++.h>
using namespace std;
#define LL long long
#define pb push_back
#define X first
#define Y second
#define cl(a,b) memset(a,b,sizeof(a))
typedef pair<int,int> P;
const int maxn=500005;
const int inf=1<<27;
#define mod 1000000007
int main(){
int T;
scanf("%d",&T);
while(T--){
LL n;
scanf("%lld",&n);
LL sum=n*(n+1)/2;
LL t=0,x=1;
while(x<=n){
sum-=x*2;
t++;
x=1<<t;
}
printf("%lld\n",sum);
}
return 0;
}