← 返回题目页

P5734 【深基6.例6】文字处理软件

标程

#include <bits/stdc++.h>
#include <string>
using namespace std;

int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);

    int q;
    cin >> q;
    string doc;
    cin >> doc;
    while (q--) {
        int op;
        cin >> op;
        if (op == 1) {
            string s;
            cin >> s;
            doc += s;
            cout << doc << "\n";
        } else if (op == 2) {
            int a, b;
            cin >> a >> b;
            doc = doc.substr(a, b);
            cout << doc << "\n";
        } else if (op == 3) {
            int a;
            string s;
            cin >> a >> s;
            doc.insert(a, s);
            cout << doc << "\n";
        } else {
            string s;
            cin >> s;
            size_t p = doc.find(s);
            if (p == string::npos) cout << -1 << "\n";
            else cout << p << "\n";
        }
    }
    return 0;
}

动画演示