比赛 20151028a 评测结果 AAAAAAAAEEEEEEEEEETEEEEEEE
题目名称 复制&粘贴 最终得分 30
用户昵称 实力演员阵容 运行时间 3.506 s
代码语言 C++ 内存使用 10.78 MiB
提交时间 2017-09-19 19:49:54
显示代码纯文本
#include<cstdio>
#include<cstring>
#include<vector>
using namespace std;
int k,m,n;
char s[10000000]={0};
char temp[1000000]={0};
void me(int x,int y){
	int z=0;
	for(int i=x;i<y;i++)
		temp[z++]=s[i];
}
void pu(int pos,int len){
	int z=0;
	for(int i=strlen(s)-1;i>=pos;i--){
		if(i+len<m)
		    s[i+len]=s[i];
	}
	for(int i=pos;i<pos+len;i++)
		s[i]=temp[z++];
}
int main(){
	freopen("copypaste.in","r",stdin);
	freopen("copypaste.out","w",stdout);
	scanf("%d%d",&k,&m);
	scanf("%s",s);
	scanf("%d",&n);
	int x,y,z;
	while(n--){
		memset(temp,0,sizeof(temp));
		scanf("%d%d%d",&x,&y,&z);
		int len=y-x;
		me(x,y);
		pu(z,len);
	}
	for(int i=0;i<k;i++)
		printf("%c",s[i]);
	return 0;
}