zoukankan      html  css  js  c++  java
  • 九度OJ 1177 查找 (模拟)

    题目1177:查找

    时间限制:1 秒

    内存限制:32 兆

    特殊判题:

    提交:5659

    解决:1667

    题目描写叙述:

        读入一组字符串(待操作的),再读入一个int n记录记下来有几条命令,总共同拥有2中命令:1、翻转  从下标为i的字符開始到i+len-1之间的字符串倒序;2、替换  命中假设第一位为1,用命令的第四位開始到最后的字符串替换原读入的字符串下标 i 到 i+len-1的字符串。

    每次运行一条命令后新的字符串取代旧的字符串(即下一条命令在作用在得到的新字符串上)。

        命令格式:第一位0代表翻转。1代表替换;第二位代表待操作的字符串的起始下标int i;第三位表示须要操作的字符串长度int len。

    输入:

    输入有多组数据。


    每组输入一个字符串(不大于100)然后输入n。再输入n条指令(指令一定有效)。

    输出:

    依据指令对字符串操作后输出结果。

    例子输入:
    bac
    2
    003
    112as
    例子输出:
    cab
    cas

    这题说的非常牛逼,但事实上cmd仅仅能操作前十个下标。。。由于cmd分不开每一个数字

    #include<stdio.h>
    char s[120];
    char cmd[120];
    int start;
    int len;
    int n;
    void SWAP(char *a,char *b)
    {
        char t=*a;
        *a=*b;
        *b=t;
    }
    void reverse()
    {
        for(int i=start,j=start+len-1;i<j;++i,--j)
            SWAP(&s[i],&s[j]);
        printf("%s
    ",s);
    }
    void replace()
    {
        int k=3;
        for(int i=start;i<start+len;++i,k++)
        {
            s[i]=cmd[k];
        }
        printf("%s
    ",s);
    }
    int main(int argc, char *argv[])
    {
      //  freopen("1177.in", "r", stdin);
        while(~scanf("%s%d",s,&n))
        {
            while(n--){
                scanf("%s",cmd);
                if(cmd[0]=='0')
                {
                    start=cmd[1]-'0';
                    len=cmd[2]-'0';
                    reverse();
                }
                else
                {
                    start=cmd[1]-'0';
                    len=cmd[2]-'0';
                    replace();
                }
     
            }
        }
        return 0;
    }
     
    /**************************************************************
        Problem: 1177
        User: kirchhoff
        Language: C
        Result: Accepted
        Time:0 ms
        Memory:912 kb
    ****************************************************************/




    版权声明:本文博主原创文章。博客,未经同意不得转载。

  • 相关阅读:
    Mybatis(二)入门程序通过id查找用户、模糊查找用户、添加用户、删除用户
    excel测试数据导入
    (转)接口自动化测试之http请求实践总结
    (转)TestNG框架提供两种传入参数的方法:
    Jmeter 集成Excel读写接口参数返回值
    优化问题
    redux
    clientHeight offsetTop scrollTop
    antddesign
    ACMICPC实验室周赛2020.3.6
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/4867313.html
Copyright © 2011-2022 走看看