比赛 2025.9.13 评测结果 RRRRRRRRRRRRRRRRRR
题目名称 The Best Lineup 最终得分 0
用户昵称 YUQIAO 运行时间 0.052 s
代码语言 C++ 内存使用 3.68 MiB
提交时间 2025-09-13 10:43:36
显示代码纯文本
#include <bits/stdc++.h>
using namespace std;
int n,a[1000010]={0},b[1000010]={0},s,t;
int ql(int a[]){
	for(int i=1;i<=n;i++){
		if(a[i]!=0){
			return 1;
		}
	}
	return 0;
}
int main(){
	freopen("lineup.in","r",stdin);
	freopen("lineup.out","w",stdout);
	int t;
	cin>>t; 
	while(t--){
		cin>>n;
		s=0;
		t=0;
		memset(b,0,sizeof(b));
		for(int i=1;i<=n;i++){
			cin>>a[i];
			if(a[i]>s&&i!=1||a[i]==s&&t<i&&i!=1){
				s=a[i];
				t=i;
			}
		}
		if(a[1]<s){
			b[++b[0]]=s;
			a[t]=0;
		}else{
			b[++b[0]]=a[1];
			b[++b[0]]=s;
			a[t]=0;
			a[1]=0;
		}
		while(ql(a)){
			s=0;
			t=0;
			for(int i=1;i<=n;i++){
				if(a[i]>s){
					s=a[i];
					t=i;
				}
			}
			for(int i=1;i<=t;i++){
				a[i]=0;
			}
			b[++b[0]]=s;
		}
		for(int i=1;i<=b[0];i++){
			cout<<b[i]<<" ";
		}
		cout<<endl;
	}
	return 0;
}