请老手帮我看一下这题哦,红色的地方不理解。
#include <stdio.h>int a[1024];
int main(){
int i , j , n;
scanf("%d",&n);
for(i = 0;i < 1<<n;++i)
a[i] = i;
for(i = 0;i < n;++i)
for(j = 0;j < 1<<n;++j)
if(j>>i&1)
a[j] += a[j^(1<<i)];
int sum = 0;
for(i = 0;i < 1<<n;++i)
sum += a[i];
printf("%d\n",sum);
return 0;
}