#include <stdio.h> #include <stdlib.h> #include <string.h> #include <math.h> int main() { int n,no,cnt; char str[3000]; char sub[3000]; while(scanf("%s",str)!=EOF&&strcmp(str,"END")!=0){ scanf("%d",&n); no=1; for(int i=0;i<n;i++){ scanf("%s",sub); if(strcmp(str,sub)==0){ printf("%d OK!\n",no); no++; }else{ for(int j=0;j<(strlen(sub)>strlen(str)?strlen(sub):strlen(str));j++){ if(str[j]!=sub[j]){ if(strlen(str)<strlen(sub)){ cnt=0; for(int k=j;sub[k]==sub[j];k--){ cnt++; } printf("%d %d delete %c\n",no,j+1-cnt+1,sub[j]); no++; break; }else if(strlen(str)==strlen(sub)){ printf("%d %d change %c\n",no,j+1,str[j]); no++; break; }else{ cnt=0; for(int k=j;str[k]==str[j];k--){ cnt++; } printf("%d %d insert %c\n",no,j+1-cnt+1,str[j]); no++; break; } } } } } } return 0; } //acmmss //acmmmss //abmmss //acmms |
Double click to view unformatted code.