原题地址:
CodeForces-405B
题意描述:
同时将一些多米诺骨牌向左向右推倒,问还剩几个没倒。
题目吐槽:
水题~水题~推倒~推倒~
解决方案:
只需记录上次推倒是向哪个方向推倒的,还有自上次推倒后还有多少是没推倒的(即“.”的数量)。当遇到再次推倒时只有五种情况,分别处理后更新状态。
上次与这次同方向时:没推倒的全倒了。
上次与这次反方向时:没推倒的全不倒。
上次与这次同方向时:如果中间有奇数个则有一个立着,如果有偶数个则全倒。
清空没推倒的变量,更新储存上一次操作的变量。
完工~
补充:起始时将储存上一次操作的置为向左的。
结束时如果记录的操作是向左,应该把最后几个立着的加入答案中。
贴上代码:
#include<iostream>
using namespace std;
int main(){
int n;
cin>>