题目大概:


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


思路:


两组数据之间的关系用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;
}