#include <bits/stdc++.h> using namespace std; int main() { int n; string ans,str; while(cin>>ans) { if(ans=="END") break; int i,j; cin>>n; getchar(); for(i=0;i<n;i++) { getline(cin,str); if(ans==str) cout<<i+1<<" OK!"<<endl; else if(str.size()==ans.size()) { for(j=0;j<ans.size();j++) if(ans[j]!=str[j]) { cout<<i+1<<" "<<j+1<<" change "<<ans[j]<<endl; break; } } else if(ans.size()<str.size()) { if (ans[0] != str[0]) { cout << i+1 << " " << 1 << " delete " << str[0] << endl; continue; } int flag = 0; for (int j = 1; j < ans.size(); j++) { if (ans[j] != str[j]) { flag = 1; if(str[j] == ans[j - 1]) cout << i+1 << " " << j << " delete " << str[j] << endl; else cout << i+1 << " " << j + 1 << " delete " <<str[j] << endl; break; } } if (flag == 0) { int pos = str.size() - 1; while (pos > 0 && str[pos] == str[pos - 1]) pos--; cout << i+1 << " " << pos + 1 << " delete " << str[pos] << endl; } } else if(ans.size()>str.size()) { char ch; for(j=0;j<ans.size();j++) { if(ans[j]!=str[j]) { ch=ans[j]; break; } } cout<<i+1<<" "<<j+1<<" insert "<<ch<<endl; } } } } |
Double click to view unformatted code.