POJ1318 Word Amalgamation

来源:互联网 发布:js url转base64编码 编辑:程序博客网 时间:2024/06/12 21:04
知识上的不足
</pre><pre name="code" class="cpp">
</pre><pre name="code" class="cpp"><pre class="sio" name="code" style="white-space: pre-wrap; word-wrap: break-word; color: rgb(51, 51, 51); font-size: 14px; line-height: 26px; background-color: rgb(255, 255, 255);">查找在字典中含有的字母。首先将字典进行按字母升序进行排序,将词表也按照字母的升序进行排序。然后看字母在词典中是否存在。对于存在的词,进行排序后再输出。

</pre><pre name="code" class="cpp">
</pre><pre name="code" class="cpp">#include <iostream>#include <cstdio>#include <cstdlib>#include <cstring>#include <algorithm>using namespace std;char dic[100][8];char dics[100][8];int top;int cmp(const void *a,const void *b){    return strcmp((char *)a, (char *)b);}void Search (char tag[]){    int i;    int flag=0;    for(i=0;i<top;i++)    {        if(!strcmp(tag,dics[i]))          {              printf("%s\n",dic[i]);              flag=1;          }    }    if(!flag)         printf("NOT A VALID WORD\n");    printf("******\n");}int main(){    //freopen("in.txt","r",stdin);    int i=0;    while(scanf("%s",dic[top++]),strcmp(dic[top-1],"XXXXXX"));    top--;    qsort(dic,top,sizeof(dic[0]),cmp);    for(i=0;i<top;i++)    {        strcpy(dics[i],dic[i]);        sort(dics[i],dics[i]+strlen(dics[i]));    }    char tag[10];    while(scanf("%s",tag),strcmp(tag,"XXXXXX"))    {        sort(tag,tag+strlen(tag));        Search(tag);    }    return 0;}

0 0
原创粉丝点击