题目描述
Syx 给你 3×N 个数,其中 Syx 可以保证:1∼N 之间的所有数都出现了 3 次,请你将 1∼N 之间的数每个出现在第 2 个位置的下标进行排序,并从小到大输出原数。
输入格式
N
A1 A2 … A3N
输出格式
题目要求的答案
样例 #1
样例输入 #1
3
1 1 3 2 3 2 2 3 1
样例输出 #1
1 3 2
样例 #2
样例输入 #2
1
1 1 1
样例输出 #2
1
样例 #3
样例输入 #3
4
2 3 4 3 4 1 3 1 1 4 2 2
样例输出 #3
3 4 1 2
提示
制約
- 1≤ N ≤ 105
- 1 ≤ Aj ≤ N
- i=1,2,…,N それぞれについて、A の中に i はちょうど 3 回現れる
#include <bits/stdc++.h>
using namespace std;
int n,x,a[100010],sum=0;
bool f;
int main() {
freopen("center.in","r",stdin);
freopen("center.out","w",stdout);
scanf("%d",&n);
for(int i=1;i<=3*n;i++)
{
scanf("%d",&x);
a[x]++;
if(a[x]==2)
{
sum++;
if(sum<n)printf("%d ",x);
else printf("%d",x);
}
}
return 0;
}