#include<bits/stdc++.h>
using namespace std;
struct student
{
int id;char name[9];
};
int main()
{
student ren[100];
int n;cin>>n;
for(int i=0;i<n;i++)
{
cin>>ren[i].id>>ren[i].name;
}
for(int i=0;i<n;i++)
{
for(int j=n-1;j>=i;j--)
{
if(ren[i].id!=ren[j].id&&ren[j].id!=3)
{
cout<<ren[i].name<<" "<<ren[j].name<<endl;ren[j].id=3;break;
}
}
}
return 0;
}
数据很小,可以两层循环