CF - 405B - Domino Effect
my english is poor
给你一列全部站立的骨牌,同时向左或向右推其中的几个
保证推得方式为: 。。。左,右,左,右,左。。。
即不存在两个相邻的又往相同方向推倒的
刚开始是从左往右一个一个遍历,若第一次推的为往左,将它前面的加起来
再根据 L ,R 判断,累加站立的,还有。。。。太麻烦了
写好程序测试数据正确,提交后WA。。。
有想到用数组记下站立的个数,但不知如何实现。。。
百度一下。。。刚开始看不懂代码。。先提交。。AC。。了
代码如下,注释是我自己的理解
#include<stdio.h>
#include<string.h>
char ch[];
int k[]; //标记数组:1 表示倒下,0 表示站立
int main()
{
int n,i;
scanf("%d",&n);
memset(k,,sizeof(k)); //初始化全部站立
scanf("%s",ch+); //数组 ch 从下标 1 开始
for(i=; i<=n; i++)
{
if(ch[i]=='L') //第 i 个字符为 L ,是往左推的
{
for(int j=i; j>; j--) //往左找
{
k[j]=; //先全部推倒
if(ch[j]=='R') //突然发现前面有个往右推的,不中,不能全推倒
{
if((i-j)%==) //若它们中间的骨牌个数为奇数
k[(i-j)/]=; // 将中间那个骨牌扶起
break; //跳出循环,不往前倒了
}
}
}
if(ch[i]=='R') //第 i 个字符为 R 往右推倒
{
for(int j=i; j<=n; j++) //往右找
{
k[j]=; //也先全推倒
if(ch[j]=='L') //突然发现后面有个往左推的
{
if((j-i)%==) //若它们中间的骨牌个数为奇数
k[(j+i)/]=; //将中间那个骨牌扶起
i=j; //再从后面发现的那个往左推的开始找
break; //跳出循环,不能往后推了
}
}
}
}
int cnt=;
for(i=; i<=n; i++) //推完了,累死我了,放松一下,统计统计几个没有战死沙场的
if(!k[i])
cnt++;
printf("%d\n" ,cnt);
return ;
}
CF - 405B - Domino Effect的更多相关文章
- CF 405B Domino Effect(想法题)
题目链接: 传送门 Domino Effect time limit per test:1 second memory limit per test:256 megabytes Descrip ...
- [ACM_图论] Domino Effect (POJ1135 Dijkstra算法 SSSP 单源最短路算法 中等 模板)
Description Did you know that you can use domino bones for other things besides playing Dominoes? Ta ...
- POJ 1135 Domino Effect(Dijkstra)
点我看题目 题意 : 一个新的多米诺骨牌游戏,就是这个多米诺骨中有许多关键牌,他们之间由一行普通的骨牌相连接,当一张关键牌倒下的时候,连接这个关键牌的每一行都会倒下,当倒下的行到达没有倒下的关键牌时, ...
- POJ 1135 Domino Effect (spfa + 枚举)- from lanshui_Yang
Description Did you know that you can use domino bones for other things besides playing Dominoes? Ta ...
- UVA211-The Domino Effect(dfs)
Problem UVA211-The Domino Effect Accept:536 Submit:2504 Time Limit: 3000 mSec Problem Description ...
- POJ 1135 Domino Effect (Dijkstra 最短路)
Domino Effect Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 9335 Accepted: 2325 Des ...
- POJ 1135.Domino Effect Dijkastra算法
Domino Effect Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 10325 Accepted: 2560 De ...
- zoj 1298 Domino Effect (最短路径)
Domino Effect Time Limit: 2 Seconds Memory Limit: 65536 KB Did you know that you can use domino ...
- TOJ 1883 Domino Effect
Description Did you know that you can use domino bones for other things besides playing Dominoes? Ta ...
随机推荐
- Response.Redirect引起的“无法在发送HTTP标头之后进行重定向”
博客后台切换至i.cnblogs.com之后,在日志中发现大量的“无法在发送HTTP标头之后进行重定向”(Cannot redirect after HTTP headers have been se ...
- linux 源码安装
下载源码安装包,一般为.tar.gz格式 解压源码至文件夹,linux终端进入该文件夹,安装只需三步,第四步为扫尾工作: ./configure --prefix=/usr/self/文件夹名称 ...
- delphi XE Berlin ReadProcessMemory WriteProcessMemory
delphi XE,Berlin [dcc32 Error] Unit9.pas(93): E2033 Types of actual and formal var parameters must ...
- SQL:将字符串以特定字符分割并返回Table
split 语法 ALTER FUNCTION [dbo].[F_SPLIT] ( @str VARCHAR(MAX) , ) ) /********************************* ...
- UVM Top Testbench
top testbench在top_tb中包含进所有的文件,将DUT放在top_tb中(例化DUT),连接好各个端口,提供clk时钟和rst_n复位信号.最主要的是要给组件中的虚接口设置接口,一般是给 ...
- xfire webServeic 例子
xfire webServeic 例子,参考网上众多例子,自己写得完成了,给大家分享 大家只要按这个目录去建文件就可以了,然后运行,至于其中原理慢慢理会吧 环境:myeclipse 10 +xfire ...
- webform页面传值和删除修改
一.webform跨页面传值1.内置对象地址栏数据拼接 QueryString 优点:简单好用:速度快:不消耗服务器内存. 缺点:只能传字符串:保密性差(调转页面后在地址栏显示):长度有限.响应请求对 ...
- 添加和删除hadoop集群中的节点
参见 http://www.cnblogs.com/tommyli/p/3418273.html
- ElasticSearch 2 (10) - 在ElasticSearch之下(深入理解Shard和Lucene Index)
摘要 从底层介绍ElasticSearch Shard的内部原理,以及回答为什么使用ElasticSearch有必要了解Lucene的内部工作方式? 了解ElasticSearch API的代价 构建 ...
- Java NIO教程 Channel
Channel是一个连接到数据源的通道.程序不能直接用Channel中的数据,必须让Channel与BtyeBuffer交互数据,才能使用Buffer中的数据. 我们用FileChannel作为引子, ...