P8681 [蓝桥杯 2019 省 AB] 完全二叉树的权值 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
#define int long long
const int N = 2e5+10;
int a[N];
signed main()
{
std::ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
int n,depth;
int k=0,sum=0;
cin>>n;
for(int i=1;i<=n;i++)cin>>a[i];
for(int i=1;i<=n;i++)
{
int tmp=0;
for(int j=i;j<=i+(1<<k)-1;j++)
{
tmp+=a[j];
}
if(tmp>sum)
{
sum=tmp;
depth = k+1;
}
i+=(1<<k)-1;
k++;
}
cout<<depth;
return 0;
}