10pts求助
查看原帖
10pts求助
1066617
_ACGODs_楼主2024/10/1 09:03
#include<iostream>
#include<algorithm>
using namespace std;
int n,m,q;
int s[200010],w[200010];
struct sNode{
	int num;
	int power;
	int top;
} node[200010];
bool cmp(sNode a,sNode b){
	if(a.num!=b.num) return a.num>b.num;
	return a.top<b.top;
}
int main(){
	scanf("%d %d %d",&n,&m,&q);
	for(int i=1;i<=2*n;i++) scanf("%d",&s[i]);
	for(int i=1;i<=2*n;i++) scanf("%d",&w[i]),node[i]={s[i],w[i],i};
	for(int i=1;i<=m;i++){	
		for(int i=0;i<n;i++){
			if(node[2*i+1].power > node[2*i+2].power) node[2*i+1].num++;
			else node[2*i+2].num++;
		}sort(node+1,node+2*n+1,cmp);
	//	for(int i=1;i<=2*n;i++) cout<<node[i].num<<' ';
//		cout<<endl;
	}cout<<node[q].top<<endl;
	return 0;
}

另:下载了第1\text{1}个样例结果完全一模一样,WA

2024/10/1 09:03
加载中...