文件phonebook1.txt和phonebook2.txt中有若干聯繫人的姓名和電話號碼。請你設計一個程序,將這兩個文件中的電話號碼同步。(所謂同步,就是將兩個文件中的電話號碼合併後剔除相同的人名和電話號碼。請將同步後的電話號碼按照姓名拼音順序排序後保存到文件phonebook3.txt中。)
由於目前的OJ系統暫時不能支持用戶讀入文件和寫文件,我們編寫程序從鍵盤輸入文件中的姓名和電話號碼,當輸入的單詞爲end時,表示文件結束。將同步後的電話號碼按照姓名拼音順序排序後輸出。
輸入格式:
張三 13012345678
李四 13112340000
王五 13212341111
馬六 13312342222
陳七 13412343333
孫悟空 13512345555
end (表示文件phonebook1.txt結束) 張三 13012345678
孫悟空 13512345555
王五 13212341111
陳七 13412343333
唐三藏 13612346666
豬悟能 13712347777
沙悟淨 13812348888
end (表示文件phonebook2.txt結束)
輸出格式:
陳七 13412343333
李四 13112340000
馬六 13312342222
沙悟淨 13812348888
孫悟空 13512345555
唐三藏 13612346666
王五 13212341111
張三 13012345678
豬悟能 13712347777
輸入樣例:
Zhang3 13012345678
Li4 13112340000
Wang5 13212341111
Ma6 13312342222
Chen7 13412343333
SunWuKong 13512345555
end
Zhang3 13012345678
SunWuKong 13512345555
Wang5 13212341111
Chen7 13412343333
TangSanZang 13612346666
ZhuWuneng 13712347777
ShaWuJing 13812348888
end
輸出樣例:
Chen7 13412343333
Li4 13112340000
Ma6 13312342222
ShaWuJing 13812348888
SunWuKong 13512345555
TangSanZang 13612346666
Wang5 13212341111
Zhang3 13012345678
ZhuWuneng 13712347777
#include"iostream"
#include"set"
#include"vector"
#include"string"
#include"cstring"
using namespace std;
int main()
{
set<string> A;
string s1;
set<string>::iterator p;
for(int i=0;i<2;i++)
{
getline(cin,s1);
while(s1!="end")
{
A.insert(s1);
getline(cin,s1);
}
}
p=A.begin();
while(p!=A.end())
cout<<*p++<<endl;
}