526B - Om Nom and Dark Park

来源:互联网 发布:淘宝男装图片素材 编辑:程序博客网 时间:2024/04/27 21:10
#include<cstdio>#include<cstring>#include<cstdlib>#include<algorithm>#include<queue>#include<vector>#include<stack>using namespace std;const int MAX = 1000000;int c[MAX];int ans;int dfs(int root){    int l = root*2;    int r = root*2 + 1;    if (c[l] == 0 && c[r] == 0){        return c[root];    }    int u = dfs(l);    int v = dfs(r);    ans += (max(u, v) - min(u,v));    c[root] = max(u, v) + c[root];    return c[root];}int main(){    int n;    while (scanf("%d",&n) != EOF){        memset(c, 0, sizeof(c));        ans = 0;        int m = (1<<(n+1)) - 2;        for (int i = 0; i<m; i++){            scanf("%d",&c[i+2]);        }        dfs(1);        printf("%d\n",ans);    }    return 0;    }
0 0
原创粉丝点击