用户工具

站点工具


2020-2021:teams:no_morning_training:部分和

这是本文档旧的修订版!


#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=(1<<21);
ll a[N];
int n;
int main()
{
    scanf("%d",&n);
    for(int i=0;i<n;i++) 
        scanf("%lld",&a[i]);
    for(int i=1,p=0;i<n;i<<=1)
    {
        p++;
        for(int j=0;j<n;j++)
            if((j&(1<<p-1))) 
                a[j]+=a[(j^(1<<p-1))];
    }
    for(int i=0;i<n;i++) 
        printf("%lld\n",a[i]);
    return 0;
}
2020-2021/teams/no_morning_training/部分和.1589790558.txt.gz · 最后更改: 2020/05/18 16:29 由 shaco