zoukankan      html  css  js  c++  java
  • [POJ1035]Spell checker

    题目大意:输入一个字典,再输入一些单词,如果单词在字典里有的则输出“*** is correct”,否则如果字典里某些单词能通过增加/删除/修改一个字符变成输入的单词,则依次输出这些单词。

    思路:模拟、字符串处理。

    按照题目要求模拟即可。

     

    C++ Code:

     1 #include<cstring>
     2 #include<cstdio>
     3 using namespace std;
     4 char dic[10005][18];
     5 int n=1;
     6 char s[18];
     7 int main(){
     8     while(scanf("%s",dic[n])&&dic[n][0]!='#')n++;
     9     n--;
    10     while(scanf("%s",s)&&s[0]!='#'){
    11         bool flag=false;
    12         printf("%s",s);
    13         for(int i=1;i<=n;i++)if(strcmp(dic[i],s)==0){//判断在字典中有该单词的情况 
    14             flag=true;
    15             break;
    16         }
    17         if(flag){
    18             printf(" is correct
    ",s);
    19             continue;
    20         }
    21         putchar(':');
    22         for(int i=1;i<=n;i++){
    23             int dicL=strlen(dic[i]),sL=strlen(s);
    24             if(dicL-sL==1){//判断删除一个字符符合条件的情况
    25                 int dicn=0,sn=0;
    26                 while(dic[i][dicn]==s[sn])dicn++,sn++;
    27                 dicn++;
    28                 while(dic[i][dicn]==s[sn]&&dicn!=dicL&&sn!=sL)dicn++,sn++;
    29                 if(dicn==dicL&&sn==sL)printf(" %s",dic[i]);
    30             }else
    31             if(sL-dicL==1){//判断插入一个字符符合条件的情况 
    32                 int dicn=0,sn=0;
    33                 while(dic[i][dicn]==s[sn])dicn++,sn++;
    34                 sn++;
    35                 while(dic[i][dicn]==s[sn]&&dicn!=dicL&&sn!=sL)dicn++,sn++;
    36                 if(dicn==dicL&&sn==sL)printf(" %s",dic[i]);
    37             }else
    38             if(sL==dicL){//判断修改一个字符符合条件的情况 
    39                 int dicn=0,sn=0;
    40                 while(dic[i][dicn]==s[sn])dicn++,sn++;
    41                 dicn++,sn++;
    42                 while(dic[i][dicn]==s[sn]&&dicn!=dicL&&sn!=sL)dicn++,sn++;
    43                 if(dicn==dicL&&sn==sL)printf(" %s",dic[i]);
    44             }
    45         }
    46         putchar('
    ');
    47     }
    48     return 0;
    49 }
  • 相关阅读:
    hdu 4027 Can you answer these queries?
    hdu 4041 Eliminate Witches!
    hdu 4036 Rolling Hongshu
    pku 2828 Buy Tickets
    hdu 4016 Magic Bitwise And Operation
    pku2886 Who Gets the Most Candies?(线段树+反素数打表)
    hdu 4039 The Social Network
    hdu 4023 Game
    苹果官方指南:Cocoa框架(2)(非原创)
    cocos2d 中 CCNode and CCAction
  • 原文地址:https://www.cnblogs.com/Mrsrz/p/6885782.html
Copyright © 2011-2022 走看看