玄关,求调
查看原帖
玄关,求调
1252442
lucy2012楼主2024/4/12 18:15
#include<bits/stdc++.h>
using namespace std;
int n,v[1<<8];
int win[1<<8];
void dfs(int x){
	if(x>=(1<<n)) return;
	dfs(2*n);
	dfs(2*n+1);
	int lv=v[2*x];
	int rv=v[2*x+1];
	if(lv>rv){
		v[x]=lv;
		win[x]=win[2*x];
	}else{
		v[x]=rv;
		win[x]=win[2*x+1];
	}
}
int main(){
	cin>>n;
	for(int i=0;i<(1<<n);i++){
		cin>>v[(1<<n)+i];
		win[(1<<n)+i]=i+1;
	}
	dfs(1);
	int num=(v[2]>v[3]?win[3]:win[2]);
	cout<<num;
    return 0;
}
2024/4/12 18:15
加载中...