数据结构C语言版编程题目,10块一道,求代码

2024-11-18 14:10:48
推荐回答(1个)
回答(1):

#include 
#include 
using namespace std;

int main()
{
int i,n;
while(scanf("%d",&a[++n])!=EOF);
for(i=n;i>=1;i--){
f[i][1]=max(f[i*2][0],f[i*2+1][0]);
f[i][0]=a[i]+max(max(f[i*2][0],f[i*2+1][0]),max(f[i*2][1],f[i*2+1][1]));
}
printf("%d\n",max(f[i][1],f[1][0]));
return 0;
}