现在的位置: 首页 > 综合 > 正文

poj 2503 Babelfish

2013年10月13日 ⁄ 综合 ⁄ 共 640字 ⁄ 字号 评论关闭

链接:点击打开链接

题意:给你一字典,如果输入的字符串在字典可以找到,输出他前面的那一字符串。

字典树可以做,但用map更简单。。。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<queue>
#include<vector>
#include<map>
#include<algorithm>
#include<string>
using namespace std;
int main(){
	char s1[110],s2[110];
	map<string,string>str;
	map<string,string>::iterator iter;
	string s3,s4;
	int i,j,len;
	while(gets(s1)){
		 if(!*s1)
		 break;
		 len=strlen(s1);
		 for(i=0;i<len;i++)  
        {  
            if(s1[i]==' ') break;  
        }  
        s1[i++]='\0';  
        for(int j=0;i<=len;i++)  
        {  
            s2[j++]=s1[i];  
        }  
		 s3=s1;
		 s4=s2;
		 str.insert(map<string,string>::value_type(s4,s3));
		}
	while(~scanf("%s",s1)){
		s3=s1;
		iter=str.find(s3);
		if(iter!=str.end())
		cout<<iter->second<<endl;
		else cout<<"eh"<<endl;
		}	
		return 0;
	}

抱歉!评论已关闭.