问题描述:

试题编号: 201512-2
试题名称: 消除类游戏
时间限制: 1.0s
内存限制: 256.0MB
问题描述:

问题描述

  消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有nm列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这些棋子都被消除。当有多处可以被消除时,这些地方的棋子将同时被消除。
  现在给你一个nm列的棋盘,棋盘中的每一个方格上有一个棋子,请给出经过一次消除后的棋盘。
  请注意:一个棋子可能在某一行和某一列同时被消除。

输入格式

  输入的第一行包含两个整数nm,用空格分隔,分别表示棋盘的行数和列数。
  接下来n行,每行m个整数,用空格分隔,分别表示每一个方格中的棋子的颜色。颜色使用1至9编号。

输出格式

  输出n行,每行m个整数,相邻的整数之间使用一个空格分隔,表示经过一次消除后的棋盘。如果一个方格中的棋子被消除,则对应的方格输出0,否则输出棋子的颜色编号。

样例输入

4 5
2 2 3 1 2
3 4 5 1 4
2 3 2 1 3
2 2 2 4 4

样例输出

2 2 3 0 2
3 4 5 0 4
2 3 2 0 3
0 0 0 4 4

样例说明

  棋盘中第4列的1和第4行的2可以被消除,其他的方格中的棋子均保留。

样例输入

4 5
2 2 3 1 2
3 1 1 1 1
2 3 2 1 3
2 2 3 3 3

样例输出

2 2 3 0 2
3 0 0 0 0
2 3 2 0 3
2 2 0 0 0

样例说明

  棋盘中所有的1以及最后一行的3可以被同时消除,其他的方格中的棋子均保留。

评测用例规模与约定

  所有的评测用例满足:1 ≤ nm ≤ 30。

解题思路:

暴力解题,使用额外的二维数组,用于存储需要消除的元素。

本来考虑了一下DFS,不过好像复杂了,还不如暴力呢,数据并不大

解题代码:

/* CCF201512-2 消除游戏 */#include <stdio.h>
#include <string.h>
#define N 30
int a[N][N], t[N][N];
int main(void){int n, m, i, j;scanf("%d%d", &n, &m);for(i=0; i<n; i++)for(j=0; j<m; j++)scanf("%d", &a[i][j]);memset(t, 0, sizeof(t));// 进行行标记(可以消除则置1)for(i=0; i<n; i++)for(j=0; j<m-2; j++)if(a[i][j]== a[i][j + 1] && a[i][j + 1] == a[i][j +2])t[i][j] = t[i][j + 1] = t[i][j + 2] = 1;// 进行列标记(可以消除则置1)for(j=0; j<m; j++)for(i=0; i<n-2; i++)if(a[i][j] == a[i + 1][j] && a[i + 1][j] == a[i + 2][j])t[i][j] = t[i + 1][j] = t[i + 2][j] = 1;// 重置矩阵afor(i=0; i<n; i++)for(j=0; j<m; j++)if(t[i][j])a[i][j] = 0;// 输出结果for(i=0; i<n; i++) {for(j=0; j<m; j++) {if(j != 0)printf(" ");printf("%d", a[i][j]);}printf("\n");}return 0;
}

CCF201512-2 消除类游戏相关推荐

  1. CCF201512-2 消除类游戏(100分)

    试题编号: 201512-2 试题名称: 消除类游戏 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进 ...

  2. ccf题库中2015年12月2号消除类游戏

    题目如下: 问题描述消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这些 ...

  3. 消除类游戏ccf c语言,ccf试题 消除类游戏

    问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这些棋子都被消 ...

  4. 用cocos2d-html5做的消除类游戏《英雄爱消除》(1)——系统主菜单

    系统主菜单如下图所示: 首先,介绍下这个主菜单,它包含了一个动画logo以及一个按钮选项,动画logo每隔1秒钟切换一张图片,点击相应的按钮选项会切换不同的游戏场景. 下面看下这个界面的源码: /** ...

  5. CCF 201512-2 消除类游戏

    问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这些棋子都被消 ...

  6. 消除类游戏(js版)

    原文:消除类游戏(js版) 最近一直在玩一款消灭星星的消除类游戏,周末无聊就用js也写了一遍,感觉玩比写还困难一直玩不到10000分.废话不多说直接上源码. 效果图(ps 页面有点难看木有美工) 代码 ...

  7. CCF2015-12-2 消除类游戏

    试题编号: 2015-12-2 试题名称: 消除类游戏 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上 ...

  8. 用Unity开发2D消除类游戏的素材资源精选

    本文精选了一些用Unity制作2D消除类游戏的UI素材.音频资源和完整项目. 常见的消除类游戏种类有:三消.六边形三消.点点消.连连消.泡泡龙类型消除.连连看.1024类型消除等.也有各种各样和其他元 ...

  9. 消除类游戏(C++)

    消除类游戏 [问题描述]消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时, ...

最新文章

  1. 【SharePoint】设置站点通讯组
  2. DPI 设置过大该如何还原?
  3. 第三十八讲:tapestry Ajax 关联下拉选框(select)组件
  4. Java学习笔记二十六:Java多态中的引用类型转换
  5. Kerberos 基本命令 - 持续更新
  6. 最全银行IT核心系统:研究框架(165页)
  7. 通俗的解释交叉熵与相对熵
  8. 余世维《有效沟通》讲义1
  9. kali渗透之取得DC-9的root权限
  10. 图的深度遍历(邓俊辉版)
  11. 实验3 交互式SQL语言1
  12. 在.NET中进行AutoCAD二次开发(C#+ObjectArx) (二)
  13. 园友们赶快行动起来,免费获得微软MCSD证书!
  14. 错误: 找不到符号 java
  15. Tableau的用法
  16. Bootstrap级联下拉菜单,你肯定用得到
  17. 【C语言】动手写一个哈希表
  18. C# EF框架(一)配置
  19. 统计学 分布篇 - Binomial Distribution(二项分布)
  20. 第八届中国云计算大会胜利启幕云计算产业进入应用迅速普及期

热门文章

  1. flex3+blazeds+spring+hibernate整合小结
  2. 软件测试的学习之路 ------ HTML,CSS里的必备单词
  3. JDK 环境变量配置
  4. SuperMap_iClient3D_10.2.1_for_WebGL下载
  5. win10环境下mysql8安装后Can‘‘t connect to MySQL server on localhost (10061)解决方法
  6. irc ubuntu_让我们聊聊写作:在IRC上加入我们
  7. viito为什么不去新说唱_为什么问责制的说唱不好
  8. SecureDrop 0.3,LibreOffice Online和更多新闻
  9. Docker收购Orchard,SAP支持OpenStack,ODF等
  10. 第九章 利用化学知识制药