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

题目传送门

#include <bits/stdc++.h>

using namespace std;
string s, a;
int n;
int opt;
int l, cnt;

int main() {
    cin >> n >> s;
    while (n--) {
        cin >> opt;
        switch (opt) {
            case 1:
                cin >> a;
                s.append(a);
                printf("%s\n", s.c_str());
                break;
            case 2:
                cin >> l >> cnt;
                s = s.substr(l, cnt);
                printf("%s\n", s.c_str());
                break;
            case 3:
                cin >> l >> a;
                s.insert(l, a);
                printf("%s\n", s.c_str());
                break;
            case 4:
                cin >> a;
                auto pos = s.find(a);
                if (pos != s.npos) printf("%d\n", pos);
                else printf("%d\n", -1);
                break;
        }
    }
    return 0;
}
posted @   糖豆爸爸  阅读(159)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
历史上的今天:
2018-11-18 ubuntu中vim下按上下左右键时输入A、B、C、D
2017-11-18 利用SQL SERVER对比两张表的数据一致性
Live2D
点击右上角即可分享
微信分享提示