噢莫加纳加加加 • 1个月前
#include <bits/stdc++.h>
using namespace std;
int a[100000], ans = 0;
void tree(int b) {
int x;
cin >> x;
a[b] = x;
if (x == -1)
return;
tree(b * 2);
tree(b * 2 + 1);
}
void find(int b, int sum) {
if (a[b] == -1)
return;
if (a[b] != -1)
sum = sum + a[b];
if (a[b * 2] == -1 && a[b * 2 + 1] == -1) {
ans += sum;
return;
}
find(b * 2, sum * 10);
find(b * 2 + 1, sum * 10);
}
int main() {
tree(1);
find(1, 0);
cout << ans;
return 0;
}
评论:
请先登录,才能进行评论