用 STL 的 sort 和 unique 写的,过样例但是爆零。
#include<bits/stdc++.h>
#define int long long
#define N 50005
using namespace std;
struct hhh
{
int index,num;
bool operator ==(const hhh &q)
{
return num==q.num;
}
}a[N];
bool cmp1(hhh q,hhh w){return q.index<w.index;}
bool cmp2(hhh q,hhh w){return q.num<w.num;}
signed main()
{
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
int t;
cin>>t;
while(t--)
{
int n,i;
cin>>n;
for(i=1;i<=n;i++) cin>>a[i].num,a[i].index=i;
sort(a+1,a+n+1,cmp2);
n=unique(a+1,a+n+1)-(a+1);
sort(a+1,a+n+1,cmp1);
for(i=1;i<=n;i++) cout<<a[i].num<<" ";
cout<<"\n";
}
return 0;
}