P1082 找朋友

时间:2024-04-10 17:33:34

描述

童年的我们,对各种事物充满了好奇与向往。这天,小朋友们对数字产生了兴趣,并且想和数字交朋友。可是,怎么分配这些数字才能使得每个小朋友都唯一地找到一个数字朋友呢?C小朋友说:咱们按自己名字的字典序先后,依次选择一个剩余的最小的数字当朋友。好么?Q小朋友十分赞同。于是,大家都同意了。

输入格式

第一行为一个数n,为小朋友数和数字数。
下面n行为小朋友们的名字。
再下面n行为候选的n个数字。

输出格式

n行,按字典序输出n个小朋友姓名及所选的数字朋友。

测试样例1

输入


src 
oldway 
claire 
whqsdhr 
ylq 
89757 
20091111 
130203 
8000800 
1008611

输出

claire 89757 
oldway 130203 
src 1008611 
whqsdhr 8000800 
ylq 20091111

备注

100%的数据满足:1<=n<=10000,每个数字均不超过1 500 000 000 (1.5*10^9)


  简单的模拟题,需要想到用string数组,然后直接调用STL库的sort进行快排就可以AC了,不过这个版本的模拟速度非常慢QAQ
 #include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int n,a[];
string ch[];
int main()
{
cin>>n;
for(int i=;i<=n;i++)cin>>ch[i];
for(int i=;i<=n;i++)scanf("%d",&a[i]);
sort(ch+,ch++n);
sort(a+,a++n);
for(int i=;i<=n;i++)
{
cout<<ch[i]<<" "<<a[i];
puts("");
}
return ;
}