俄罗斯方块(NOIP模拟赛)(水·模拟)
真是一道神奇的题目233~
迫不得已贴了个题解的链接。。
好吧,这道题就是分情况讨论,纯模拟,,
没有什么难的。。
脑洞要大,四面都要考虑,不能漏!
#include<iostream>
#include<cstdio>
using namespace std;
int c,p,ans;
int l[];
int absq(int a,int b){return a>b?a-b:b-a;}
int main(){
freopen("game.in","r",stdin);
freopen("game.out","w",stdout);
scanf("%d%d",&c,&p);
for(int i=;i<=c;i++)
scanf("%d",&l[i]);
if(p==){
ans+=c;
for(int i=;i<=c;i++)
if((l[i]==l[i-])&&(l[i-]==l[i-])&&(l[i-]==l[i-]))
ans++;
}
else if(p==){
for(int i=;i<=c;i++)
if(l[i]==l[i-])ans++;
}
else if(p==){
for(int i=;i<=c;i++)
if(l[i-]-l[i]==)ans++;
for(int i=;i<=c;i++)
if(l[i-]==l[i-]&&l[i]-l[i-]==)ans++;
}
else if(p==){
for(int i=;i<=c;i++)
if(l[i]-l[i-]==)ans++;
for(int i=;i<=c;i++)
if(l[i-]-l[i-]==&&l[i-]==l[i])ans++;
}
else if(p==){
for(int i=;i<=c;i++)
if(absq(l[i],l[i-])==)ans++;
for(int i=;i<=c;i++)
if((l[i]==l[i-])&&(l[i-]==l[i-]))ans++;
for(int i=;i<c;i++)
if(l[i-]-l[i]==&&l[i+]-l[i]==)ans++;
}
else if(p==){
for(int i=;i<=c;i++)
if((l[i]==l[i-])&&l[i-]==l[i-])ans++;
for(int i=;i<=c;i++)
if(l[i]==l[i-])ans++;
for(int i=;i<=c;i++)
if ((l[i-]-l[i-]==)&&(l[i]==l[i-]))ans++;
for(int i=;i<=c;i++)
if (l[i-]-l[i]==)ans++;
}
else if(p==){
for(int i=;i<=c;i++)
if((l[i]==l[i-])&&l[i-]==l[i-])ans++;
for(int i=;i<=c;i++)
if(l[i]==l[i-])ans++;
for(int i=;i<=c;i++)
if ((l[i-]==l[i-])&&(l[i-]-l[i]==))ans++;
for(int i=;i<=c;i++)
if (l[i]-l[i-]==)ans++;
}
printf("%d\n",ans);
fclose(stdin);
fclose(stdout);
}
俄罗斯方块(NOIP模拟赛)(水·模拟)的更多相关文章
- noip模拟赛 水题
题目描述 LYK出了道水题. 这个水题是这样的:有两副牌,每副牌都有n张. 对于第一副牌的每张牌长和宽分别是xi和yi.对于第二副牌的每张牌长和宽分别是aj和bj.第一副牌的第i张牌能覆盖第二副牌的第 ...
- noip模拟赛 水管工的难题
[问题描述]你是一名优秀的水管工. 一天你遇到了一个棘手的难题. 你需要在一个长方体状的房间内连接一条贯穿房间内部的水管.房间的长为 X,宽为 Y,高为 Z, 整个房间可以看成是 X×Y×Z个小立方体 ...
- NOIP模拟赛20161022
NOIP模拟赛2016-10-22 题目名 东风谷早苗 西行寺幽幽子 琪露诺 上白泽慧音 源文件 robot.cpp/c/pas spring.cpp/c/pas iceroad.cpp/c/pas ...
- contesthunter暑假NOIP模拟赛第一场题解
contesthunter暑假NOIP模拟赛#1题解: 第一题:杯具大派送 水题.枚举A,B的公约数即可. #include <algorithm> #include <cmath& ...
- 大家AK杯 灰天飞雁NOIP模拟赛题解/数据/标程
数据 http://files.cnblogs.com/htfy/data.zip 简要题解 桌球碰撞 纯模拟,注意一开始就在袋口和v=0的情况.v和坐标可以是小数.为保险起见最好用extended/ ...
- 队爷的Au Plan CH Round #59 - OrzCC杯NOIP模拟赛day1
题目:http://ch.ezoj.tk/contest/CH%20Round%20%2359%20-%20OrzCC杯NOIP模拟赛day1/队爷的Au%20Plan 题解:看了题之后觉得肯定是DP ...
- 队爷的新书 CH Round #59 - OrzCC杯NOIP模拟赛day1
题目:http://ch.ezoj.tk/contest/CH%20Round%20%2359%20-%20OrzCC杯NOIP模拟赛day1/队爷的新书 题解:看到这题就想到了 poetize 的封 ...
- CH Round #58 - OrzCC杯noip模拟赛day2
A:颜色问题 题目:http://ch.ezoj.tk/contest/CH%20Round%20%2358%20-%20OrzCC杯noip模拟赛day2/颜色问题 题解:算一下每个仆人到它的目的地 ...
- 10.17 NOIP模拟赛
目录 2018.10.17 NOIP模拟赛 A 咒语curse B 神光light(二分 DP) C 迷宫maze(次短路) 考试代码 B 2018.10.17 NOIP模拟赛 时间:1h15min( ...
- 10.16 NOIP模拟赛
目录 2018.10.16 NOIP模拟赛 A 购物shop B 期望exp(DP 期望 按位计算) C 魔法迷宫maze(状压 暴力) 考试代码 C 2018.10.16 NOIP模拟赛 时间:2h ...
随机推荐
- 数据库中where与having的区别
从整体声明角度分析: “where”是一个约束声明,在查询数据库结果返回之前对数据库的查询条件做一个约束,即返回结果之前起作用,“where”后面不能跟聚合函数: “having”是一个过滤声明,在查 ...
- 使用selenium模拟登录知乎
网上流传着许多抓取知乎数据的代码,抓取它的数据有一个问题一定绕不过去,那就是模拟登录,今天我们就来聊聊知乎的模拟登录. 获取知乎内容的方法有两种,一种是使用request,想办法携带cookies等必 ...
- 前言 openwrt简介
什么是openwrt?先看一下度娘怎么说. OpenWRT是一个高度模块化.高度自动化的嵌入式Linux系统,拥有强大的网络组件和扩展性,常常被用于工控设备.电话.小型机器人.智能家居.路由器以及VO ...
- C# 在窗口绘制图形(打点、画圆、画线)
需要包含命名空间 using System.Drawing; 画图前需要先创建画板 void Display() { Graphics g = this.CreateGraphics(); //创建画 ...
- 操作视频-对视频进行canny边缘检测
#include<opencv2/opencv.hpp> using namespace cv; int main() { VideoCapture capture(); //从摄像头读入 ...
- SVN 的基本用法
克隆远程库 # svn checkout $URL --username=$userName 显示库信息 # svn info 显示库状态 # svn status 将文件纳入版本管理 # svn a ...
- PHP代码审计2-常用超全局变量,常用命令注入,常用XSS漏洞审计,文件包含
超全局变量 $GLOBALS — 引用全局作用域中可用的全部变量$_SERVER — 服务器和执行环境信息$_GET — HTTP GET 变量$_POST — HTTP POST 变量$_FILES ...
- 6.Mongodb索引
1.索引 2.索引的命令
- android apk瘦身之 图片压缩 tinypng
参考地址: http://blog.csdn.net/jy692405180/article/details/52409369 http://www.tuicool.com/articles/BraI ...
- 《算法》C++代码 前言
现在大二正在上<数据结构>课,课内的书上代码实现很喜欢无脑用类.变量名字很长,而且常常实现太繁琐,并且代码有些无法运行,这些对于老手无所谓,但初学者看起来却会很不舒服.因此写点自己的代码, ...