CCF CSP 201512-2 消除类游戏
CCF计算机职业资格认证考试题解系列文章为meelo原创,请务必以链接形式注明本文地址
CCF CSP 201512-2 消除类游戏
问题描述
现在给你一个n行m列的棋盘,棋盘中的每一个方格上有一个棋子,请给出经过一次消除后的棋盘。
请注意:一个棋子可能在某一行和某一列同时被消除。
输入格式
接下来n行,每行m个整数,用空格分隔,分别表示每一个方格中的棋子的颜色。颜色使用1至9编号。
输出格式
样例输入
2 2 3 1 2
3 4 5 1 4
2 3 2 1 3
2 2 2 4 4
样例输出
3 4 5 0 4
2 3 2 0 3
0 0 0 4 4
样例说明
样例输入
2 2 3 1 2
3 1 1 1 1
2 3 2 1 3
2 2 3 3 3
样例输出
3 0 0 0 0
2 3 2 0 3
2 2 0 0 0
样例说明
评测用例规模与约定
解析
由于一个位置可能同时被一行消除或者被一列消除,故不能直接在原棋盘中操作。
代码中建立了一个remove二维数组,标识一个位置是否需要消除。
消除某一行时,统计棋子左侧出现同色棋子的个数。在遇到新颜色棋子时时,如果之前的颜色出现超过三次,则进行消除。
代码
C++
#include <stdio.h>
int main() {
int board[][] = {};
bool remove[][] = {};
int N, M;
scanf("%d%d", &N, &M);
for(int n=; n<N; n++) {
for(int m=; m<M; m++) {
scanf("%d", &board[n][m]);
}
}
int color;
int cnt;
for(int n=; n<N; n++) {
color = board[n][];
cnt = ;
for(int m=; m<=M; m++) {
if(board[n][m]==color) {
cnt++;
}
else {
if(cnt>=) {
while(cnt) {
remove[n][m-cnt] = true;
cnt--;
}
}
color = board[n][m];
cnt = ;
}
}
}
for(int m=; m<M; m++) {
color = board[][m];
cnt = ;
for(int n=; n<=N; n++) {
if(board[n][m]==color) {
cnt++;
}
else {
if(cnt>=) {
while(cnt) {
remove[n-cnt][m] = true;
cnt--;
}
}
color = board[n][m];
cnt = ;
}
}
}
for(int n=; n<N; n++) {
for(int m=; m<M; m++) {
if(remove[n][m]) printf("%d ", );
else printf("%d ", board[n][m]);
}
printf("\n");
}
}
CCF CSP 201512-2 消除类游戏的更多相关文章
- ccf题库中2015年12月2号消除类游戏
题目如下: 问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这 ...
- ccf消除类游戏
问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这些棋子都被消 ...
- CSP201512-2:消除类游戏
引言:CSP(http://www.cspro.org/lead/application/ccf/login.jsp)是由中国计算机学会(CCF)发起的"计算机职业资格认证"考试, ...
- 消除类游戏(js版)
最近一直在玩一款消灭星星的消除类游戏,周末无聊就用js也写了一遍,感觉玩比写还困难一直玩不到10000分.废话不多说直接上源码. 效果图(ps 页面有点难看木有美工) 代码总共456行,未经过严格测试 ...
- CCF2015122消除类游戏(C语言版)
问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这些棋子都被消 ...
- 用cocos2d-html5做的消除类游戏《英雄爱消除》(3)——游戏主界面
游戏主界面,同时也是主程序,包括sprite的生成加入以及游戏状态的控制. 下面同样贴下源码再讲解; /** * Power by html5中文网(html5china.com) * author: ...
- 用cocos2d-html5做的消除类游戏《英雄爱消除》(2)——Block设计实现
Block可以说是这个游戏的核心类,它除了包含自身的一些属性和方法外还添加了对触摸事件的响应. 我们先来看下源码吧 /** * Power by html5中文网(html5china.com) * ...
- 用cocos2d-html5做的消除类游戏《英雄爱消除》(1)——系统主菜单
系统主菜单如下图所示: 首先,介绍下这个主菜单,它包含了一个动画logo以及一个按钮选项,动画logo每隔1秒钟切换一张图片,点击相应的按钮选项会切换不同的游戏场景. 下面看下这个界面的源码: /** ...
- 用cocos2d-html5做的消除类游戏《英雄爱消除》——概述
在bbs.html5china.com论坛学习了MV和老马的小熊蘑菇后我也自己模仿他们做了这样子一个游戏,权当技术交流学习,现在附上游戏截图和源码. 游戏截图: 1.系统菜单界面: 2.游戏界面 3. ...
随机推荐
- K8S从私有仓库拉取镜像
通常来讲,我们在通过公共镜像仓库拉取docker镜像的时候,不需要任何的认证操作,但我们在构建了企业的私有镜像以后,就不得不在拉取镜像之前通过用户名密码来完成认证. 在docker单机环境中,我们可以 ...
- Zabbix应用二:Zabbix添加监控主机
Zabbix添加被监控主机 一.选择中文语言 Zabbox3.0默认支持中文,可以登录后,点击右上角的用户图标,然后在语言中选择中文即可. 二.添加被监控主机 1.选择'配置'->'主机',然后 ...
- ElasticStack系列之十六 & ElasticSearch5.x index/create 和 update 源码分析
开篇 在ElasticSearch 系列十四中提到的问题即 ElasticStack系列之十四 & ElasticSearch5.x bulk update 中重复 id 性能骤降,继续这个问 ...
- P4779 【模板】单源最短路径(标准版)
P4779 [模板]单源最短路径(标准版) 求单源最短路, 输出距离 Solution \(nlogn\) 堆优化 \(Djs\) Code #include<iostream> #inc ...
- lvm--pv丢失后恢复
[root@db-backup ~]# vgcfgrestore vg_backup Couldn't find device with uuid JgYDQu-R1AG-wrD2-AHpX-A14 ...
- 关于初次使用Linux的一些小经验
前些天看了一下腾讯的招聘的网站,发现大多数开发都要求在Linux系统下进行,所以就赶紧装了个Ubuntu来玩玩,可是装了以后才发现,初次接触Linux就跟小学生差不多,大部分操作都要通过命令行来完成, ...
- Pycharm和IntelliJ IDEA激活 2017.3.x版本
PyCharm 2017.3.3 (Professional Edition) 已经屏蔽了http://www.imsxm.com/ http-server激活方式,我根据参考教程搭建了一个,如有 ...
- C. Polygon for the Angle(几何)
题目链接:http://codeforces.com/contest/1096/problem/C 题目大意:T是测试样例,然后每一次输入一个角度,然后问你在一个n边形里面,能不能构成这个角度,如果能 ...
- G - Pandaland HDU - 6005 (找最小环)
题目链接:https://cn.vjudge.net/contest/275153#problem/G 具体思路: 我们可以按照暴力的方法进行做 , 我们可以枚举每一条边,将这条边的权值设置为inf, ...
- python装饰器三种装饰模式的简单理解
学设计模式中有个装饰模式,用java实现起来不是很难,但是远远没有python简单,难怪越来越火了! 这里就简单讨论下python的几种装饰模式: 一 无参装饰器: # 装饰器 import time ...