solution-cf598b

思路

显然,暴力是可行的。对于第 $i$ 个字符,它应该移动到 $(i + k)\bmod m$

代码

#include<iostream>
using namespace std;
int main()
{
    string a;
    cin>>a;
    string b;
    b = a;
    int m;
    cin>>m;
    while(m--){
        int l, r, k;
        cin>>l>>r>>k;
        l--, r--;
        for(int i = l; i <= r; i++)
        {
            b[(i-l+k) % (r-l+1)] = a[i];
        }
        for(int i = l; i <= r; i++){
            a[i] = b[i-l];
        }
    }
    cout<<a;
    cout<<endl;
    return 0;
}
posted @ 2022-05-14 11:58  WRuperD  阅读(1)  评论(0编辑  收藏  举报  来源

本文作者:DIVMonster

本文链接:https://www.cnblogs.com/guangzan/p/12886111.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

这是一条自定义内容

这是一条自定义内容