40分求调
查看原帖
40分求调
921391
Sq6666楼主2024/2/23 15:11
#include<iostream>
#include<vector>
using namespace std;
typedef pair<int,int>pii;
const int N=1e5;
int main()
{
	int n;
	cin>>n;
	int t=(1<<n);
//	cout<<t<<endl;
	vector<pii>ve;
	for(int i=0;i<(1<<n);i++)
	{
		int x;
		cin>>x; 
		ve.push_back(make_pair(x,i+1));
	}
	while(n>=2)
	{
		for(int i=0;i<=((1<<n)-1);i+=2)
		{
			if(ve[i].first>ve[i+1].first)
			{
				ve.erase(ve.begin()+i+1);
			}
			else ve.erase(ve.begin()+i);
		}
		n--;
	}
//	cout<<ve.size()<<endl;
//	cout<<ve[0].first<<" "<<ve[1].first<<endl;
	if(ve[0].first>ve[1].first)cout<<(ve[1].second);
	else cout<<(ve[0].second);
	return 0;
}
2024/2/23 15:11
加载中...