蒟蒻初学二叉树只输出0求助

P4715 【深基16.例1】淘汰赛

这样是可以通过测试的,我感觉会不会是用例时候是多线程的缘故,n被改变的原因,目前知识猜测 ```c #include<bits/stdc++.h> using namespace std; int v[260],w[260],n; void dfs(int x,int n) { if(x >= 1 << n) return; else { dfs(x + x,n); dfs(x + x + 1,n); int lv = v[2 * x],rv = v[2 * x + 1]; if(lv > rv) { v[x] = lv; w[x] = w[2 * x]; } else { v[x] = rv; w[x] = w[2 * x + 1]; } } } signed main() { cin >> n; for(int i = 0;i < 1 << n;i++) { cin >> v[i + (1 << n)]; w[i + (1 << n)] = i + 1; } dfs(1,n); int res = (v[2] > v[3]) ? w[3] : w[2]; // for(int i = 0;i < 1 << (n + 1);i++) // { // cout << v[i] << " "; // } // cout<<endl; // for(int i = 0;i < 1 << (n + 1);i++) // { // cout << w[i] << " "; // } // cout<<endl; cout << res; return 0; } ```
by congege @ 2023-05-21 22:21:13


|