爆零
查看原帖
爆零
598904
xh001楼主2023/3/13 22:07

求问思路哪里有问题

#include<bits/stdc++.h>
using namespace std;
const int mn=0x3f3f3f3f;
struct node
{
	int id,val;
}a[50001];
int n,t,sum;
bool cmp(node x,node y)
{
	return x.val<y.val;
}
bool cmpp(node x,node y)
{
	return x.id<y.id;
}
int main()
{
	ios::sync_with_stdio(false);
	cin.tie(0);
	cin>>t;
	a[0].val=-mn;
	while(t--)
	{
		cin>>n;
		for(int i=1;i<=n;i++)
		{
			cin>>a[i].val;
			a[i].id=i;
		}
		sort(a+1,a+n+1,cmp);
		for(int i=1;i<=n;i++)
		{
			if(a[i].val!=sum)
			{
				sum=a[i].val;
			}
			else
			{
				a[i].id=mn;
			}
		}
		sort(a+1,a+n+1,cmpp);
		for(int i=1;i<=n;i++)
		{
			if(a[i].id==mn)
			{
				break;
			}
			cout<<a[i].val<<' ';
		}
		cout<<endl;
	}
	return 0;
}
2023/3/13 22:07
加载中...