
题目描述(Description)
给定一些字符串以及它在一种外星语言中的对应解释,现在有若干外星语言中的串,要求把它们翻译成英语。
分析(Analysis)
直接用字典树存外星语,维护一个长度为11的字符数组,用来存对应的英语。
代码(Code)
#include<cstdio>
#include<cstring>
#include<cstdlib>
using namespace std;
const int M=100003;
struct Node{
int hash;
struct Node *next;
}*link[M]={NULL};
char word[100000][11],dialect[100000][11];
int (char *key)
{
unsigned long h=0,g;
while(*key){
h=(h<<4)+*key++;
g=h&0x0000000L;
if(g)
h^=g>>24;
h&=~g;
}
return h%M;
}
int main()
{
int i,j,e,n=0;
struct Node *p;
char str[100];
gets(str);
while(strcmp(str,"")!=0)
{
for(i=0;str[i]!=' ';i++){
word[n][i]=str[i];
}
word[n][i++]='




近期评论