10.20每日总结
P4715 【深基16.例1】淘汰赛 - 洛谷 | 计算机科学教育新生态 (luogu)
队列法,pair型队列,可以加深对pair和队列的理解和应用,用队列是因为从头出,从尾进,刚好可以适合这题形成闭环,主要make_pair(),还有x.first,x.second这种写法
#include<bits/stdc++.h>
#define int long long
using namespace std;
int n;
signed main()
{cin>>n;n=pow(2,n);queue<pair<int,int>> q;for(int i=1;i<=n;i++){int x;cin>>x;q.push(make_pair(i,x));}while(q.size()>2)//直到剩最后两个停止 {pair<int,int> x,y;x=q.front();//从头弹出 q.pop();y=q.front();q.pop();if(x.second>y.second){q.push(x);//从尾放入 }else{q.push(y);}}pair<int,int> x,y;x=q.front();q.pop();y=q.front();q.pop();if(x.second>y.second){cout<<y.first;//输出亚军编号 }else{cout<<x.first;}return 0;
}
更多推荐
10.20每日总结
发布评论