acm书中题目 b-2

来源:互联网 发布:js中的li怎么去掉 编辑:程序博客网 时间:2024/03/29 21:25

题目大概:

要求输入一对对数据,如果再输入是能用其中一组数据调出另一组数据。

思路:

两组数据之间的关系用map来实现比较简单,因为要判断空行,所以我用了getline()来输入,用空来判断空行。

感想:

用空来判断空行确实难以想到,这是我查资料知道的。

代码:

#include <iostream>#include <map>#include <string>#include <algorithm>using namespace std;int main(){map<string,string>a;string q="",m;while(getline(cin,q)){string w="",e="";int k=0;if(q=="")break;for(int i=0;i<q.size();i++){if(q[i]==32){k=i;break;}} for(int i=0;i<k;i++) {w=w+q[i]; } for(int i=k+1;i<q.size();i++) {e=e+q[i]; }a.insert(map<string,string>::value_type(e,w));}int l;while(getline(cin,m)){l=a.count(m);if(l)cout<<a[m]<<endl;else cout<<"eh"<<endl;}   return 0;}

0 0