View Code of Problem 105

#include<iostream>
#include<string>

using namespace std;

int main() {
	string r;
	string s;
	string t;
	int n;
	while (cin >> r) {
		if (r == "END") {
			return 0;
		}

		cin >> n;
		for (int i = 1; i <= n; ++i) {
			cin >> s;

			if (s.size() < r.size()) {
				for (int j = 0; j < r.size(); ++j) {
					t = s;
					if (t.insert(j, 1, r[j]) == r) {
						cout << i << " " << j + 1 << " insert " << r[j] << endl;
						break;
					}
				}
			}
			else if (s.size() > r.size()) {
				for (int j = 0; j < s.size(); ++j) {
					t = s;
					if (t.erase(j, 1) == r) {
						cout << i << " " << j + 1 << " delete " << s[j] << endl;
						break;
					}
				}
			}
			else if (s.size() == r.size()) {
				if (s == r) {
					cout << i << " OK!" << endl;
				}
				else {
					for (int j = 0; j < s.size(); ++j) {
						t = s;
						t[j] = r[j];
						if (t == r) {
							cout << i << " " << j + 1 << " change " << r[j] << endl;
							break;
						}
					}
				}
			}
		}
	}
}

Double click to view unformatted code.


Back to problem 105