poj 2503 Babelfish
用到C++中的map<string,string>
收获
map<string,string>s
s[char a[]]=char b[] ,虽然写着是string string 可是可以直接用char数组赋值
string转换为char 数组方法
string s;
char s1[50];
strcpy(s1,s.c_str());
char数组转换为string
s=s1;
或是 string s(s1);
题目思路清晰,代码:
#include<iostream>
#include<map>
#include<string>
using namespace std;
char s1[30],s2[30];
map<string,string>s;
void change()
{
int l=strlen(s1),i,k;
for(i=0;i<l;i++)
if(s1[i]==' ')break;
s1[i]='\0';
for(k=0,i++;i<l;k++,i++)
s2[k]=s1[i];
s2[k]='\0';
s[s2]=s1;
}
int main()
{
string ss;
while(gets(s1)!=NULL)
{
if(!strlen(s1))break;
change();
}
while(gets(s1)!=NULL)
{
ss=s[s1];
strcpy(s2,ss.c_str());
if(strlen(s2))cout<<ss<<endl;
else
printf("eh\n");
}
return 0;
}
浙公网安备 33010602011771号