chino with c language (理解题意形模拟题)

swjtu—春季集训 - Virtual Judge (vjudge.net)

关键:是理解题意,更具给出的数据,考验读题能力和推导能力?反正这道题读了半天没搞清楚,最后看的题解

题目: 2种复制,一种直接在原来的字符串上复制,如果已经有了变更的内容,就按照变更的内容来,

                            一种是先在存一个相同的字符串,复制的内容从这个存的字符串上拿。

#include <bits/stdc++.h>
using namespace std;
#define ri register int
#define M 2000005

template <class G> void read(G &x)
{
    x=0;int f=0;char ch=getchar();
    while(ch<'0'||ch>'9'){f|=ch=='-';ch=getchar();}
    while(ch>='0'&&ch<='9'){x=(x<<1)+(x<<3)+(ch^48);ch=getchar();}
    x=f?-x:x;
    return ;
}

int n;
string s1,s2;
int main(){
    read(n);
    getline(cin,s1);
    s2=s1;
    int a,b,c;
    read(a);read(b);read(c);
    for(ri i=0;i<c;i++)
    {
        s2[b+i-1]=s1[a+i-1];
    }
    for(ri i=0;i<c;i++)
    {
        s1[b+i-1]=s1[a+i-1];
    }
    cout<<s1;
    cout<<endl;cout<<s2;
}
View Code

 

posted @ 2022-05-24 20:03  VxiaohuanV  阅读(27)  评论(0编辑  收藏  举报