poj 2503 Babelfish

来源:互联网 发布:无锡软件开发 编辑:程序博客网 时间:2024/06/16 21:58

用到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;elseprintf("eh\n");}return 0;}


 

原创粉丝点击