AcWing 5009. 剪切粘贴
原题链接
简单
作者:
东河dd
,
2024-04-19 16:37:37
,
所有人可见
,
阅读 5
#include<bits/stdc++.h>
using namespace std;
string a;
void solve() {
int m, n;
string c, d;
cin >> m >> n >> c >> d;
string x = a.substr(m, n - m + 1);//截取字符串
a = a.erase(m, n - m + 1);//删除被截取的部分
int f1 = a.find(c + d);//查找
if (f1 != -1) {
a.insert(f1 + c.size(), x);
}
else a = a + x;//没找到的情况,放在最后
}
int main() {
cin >> a;
int T = 1;
a = " "+a ;//方便处理,与题目中下标对应,在最前面加" "
cin >> T;
while (T--) {
solve();
}
a = a.erase(0, 1);//记得删除空格
cout << a;
}