比赛 20151028a 评测结果 EEEEEEEEEEEEEEEEEEEEEEEEEE
题目名称 复制&粘贴 最终得分 0
用户昵称 ☜怪盗基德☞ 运行时间 2.080 s
代码语言 C++ 内存使用 0.79 MiB
提交时间 2015-10-28 12:24:11
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cmath>
#include<vector>
#include<cstring>
#include<deque>
#define ll long long
using namespace std;
int k,m;
string s;char tmp[500001];
int n;
int main()
{
	freopen("copypaste.in","r",stdin);freopen("copypaste.out","w",stdout);
	int x,y,z;
	cin>>k>>m;cin>>s;
	cin>>n;int len=s.size();
	
	for(int i=1;i<=n;i++)
	{
		cin>>x>>y>>z;
		y--;
		
		for(int i=1;i<=y-x+1;i++)
		{
			tmp[x+i-1]=s[x+i-1];
		}
		for(int i=len-1;i>=z;i--)
		s[i+y-x+1]=s[i];
		for(int i=1;i<=y-x+1;i++)
		{
			s[z+i-1]=tmp[x+i-1];
		}
		len=min(len+y-x+1,m);
	}
	char ch;
	for(int i=0;i<k;i++)
	{
		ch=s[i];cout<<ch;
		if(i==k-1)return 0;
	}
}