zoukankan      html  css  js  c++  java
  • CF

    my english is poor

    给你一列全部站立的骨牌,同时向左或向右推其中的几个

    保证推得方式为: 。。。左,右,左,右,左。。。

    即不存在两个相邻的又往相同方向推倒的

    刚开始是从左往右一个一个遍历,若第一次推的为往左,将它前面的加起来

    再根据 L ,R 判断,累加站立的,还有。。。。太麻烦了

    写好程序测试数据正确,提交后WA。。。

    有想到用数组记下站立的个数,但不知如何实现。。。

    百度一下。。。刚开始看不懂代码。。先提交。。AC。。了

    代码如下,注释是我自己的理解

    #include<stdio.h>
    #include<string.h>
    char ch[3005];
    int k[3005];             //标记数组:1 表示倒下,0 表示站立
    int main()
    {
        int n,i;
        scanf("%d",&n);
        memset(k,0,sizeof(k));  //初始化全部站立
        scanf("%s",ch+1);       //数组 ch 从下标 1 开始
        for(i=1; i<=n; i++)
        {
            if(ch[i]=='L')     //第 i 个字符为 L ,是往左推的
            {
                for(int j=i; j>0; j--)  //往左找
                {
                    k[j]=1;             //先全部推倒
                    if(ch[j]=='R')       //突然发现前面有个往右推的,不中,不能全推倒
                    {
                        if((i-j)%2==0)    //若它们中间的骨牌个数为奇数
                            k[(i-j)/2]=0; // 将中间那个骨牌扶起
                        break;              //跳出循环,不往前倒了
                    }
                }
            }
            if(ch[i]=='R')            //第 i 个字符为 R 往右推倒
            {
                for(int j=i; j<=n; j++)  //往右找
                {
                    k[j]=1;              //也先全推倒
                    if(ch[j]=='L')       //突然发现后面有个往左推的
                    {
                        if((j-i)%2==0)   //若它们中间的骨牌个数为奇数
                            k[(j+i)/2]=0;  //将中间那个骨牌扶起
                        i=j;              //再从后面发现的那个往左推的开始找
                        break;        //跳出循环,不能往后推了
                    }
                }
            }
        }
        int cnt=0;
        for(i=1; i<=n; i++)    //推完了,累死我了,放松一下,统计统计几个没有战死沙场的
            if(!k[i])
                cnt++;
        printf("%d
    " ,cnt);
        return 0;
    }
  • 相关阅读:
    API响应
    利用postman 实现Get和Post测试
    Postman 使用详解
    斐讯K2 22.5.9固件刷华硕固件实测教程
    Python多线程
    Ubuntu 16.04 上安装 MySQL 5.7 教程
    python 实战爬虫项目,学会这个32个项目天下无敌
    目录
    zip 下载解压
    滑动
  • 原文地址:https://www.cnblogs.com/Houheshuai/p/3683840.html
Copyright © 2011-2022 走看看