CCF2015122消除类游戏(C语言版)
问题描述消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这些棋子都被消除。当有多处可以被消除时,这些地方的棋子将同时被消除。
现在给你一个n行m列的棋盘,棋盘中的每一个方格上有一个棋子,请给出经过一次消除后的棋盘。
请注意:一个棋子可能在某一行和某一列同时被消除。输入格式输入的第一行包含两个整数n, m,用空格分隔,分别表示棋盘的行数和列数。
接下来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 ≤ n, m ≤ 30。
#include<stdio.h> int main()
{
int i , j ,k ,pos ,count ;
int n , m;
int a1[][], a2[][];
scanf("%d%d",&n , &m);
for(i= ; i< n ; i++)
for(j = ; j <m ; j++)
scanf("%d", &a1[i][j]); for(i= ; i< n ; i++)
for(j = ; j <m ; j++)
a2[i][j] = a1[i][j]; for(i=;i<n;i++)
{//处理数组的行
for(j=;j<m;j++)
{
count = ;
for(k=j+;k<m;k++)
{//针对每一行的元素,参照冒泡的思路,从a[i][j]开始将元素逐一于其对比
if(a1[i][j] != a1[i][k])//如果 相等的数没达到3个,则终端对比,重新去对比参照数a[i][j+1]
break;
else
count ++; //记录相等的数的数量
}
if(count >= )//若相等的数的数量超过3个,
for(k = j ; k < count+j ; k++)
{
a1[i][k] = ;
}
}
} for(j=;j<m;j++)
{//处理数组的列
for(i=;i<n;i++)
{
count = ;
for(k=i+;k<n;k++)
{
if(a2[i][j] != a2[k][j])
break;
else
count ++;
}
if(count >= )
for(k = i ; k < count+i ; k++)
{
a1[k][j] = ;
}
}
} for(i= ; i< n ; i++)
for(j = ; j <m ; j++)
if(a2[i][j] == ) a1[i][j] = a2[i][j]; for(i= ; i< n ; i++){
for(j = ; j <m- ; j++)
printf("%d ",a1[i][j]);
printf("%d\n",a1[i][m-]);
}
return ;
}
CCF2015122消除类游戏(C语言版)的更多相关文章
- CCF201512-2 消除类游戏 java(100分)
试题编号: 201512-2 试题名称: 消除类游戏 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进 ...
- CCF201512-2消除类游戏
问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这些棋子都被消 ...
- 消除类游戏(js版)
最近一直在玩一款消灭星星的消除类游戏,周末无聊就用js也写了一遍,感觉玩比写还困难一直玩不到10000分.废话不多说直接上源码. 效果图(ps 页面有点难看木有美工) 代码总共456行,未经过严格测试 ...
- ccf题库中2015年12月2号消除类游戏
题目如下: 问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这 ...
- ccf消除类游戏
问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这些棋子都被消 ...
- CCF CSP 201512-2 消除类游戏
CCF计算机职业资格认证考试题解系列文章为meelo原创,请务必以链接形式注明本文地址 CCF CSP 201512-2 消除类游戏 问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行 ...
- CSP201512-2:消除类游戏
引言:CSP(http://www.cspro.org/lead/application/ccf/login.jsp)是由中国计算机学会(CCF)发起的"计算机职业资格认证"考试, ...
- 用cocos2d-html5做的消除类游戏《英雄爱消除》(3)——游戏主界面
游戏主界面,同时也是主程序,包括sprite的生成加入以及游戏状态的控制. 下面同样贴下源码再讲解; /** * Power by html5中文网(html5china.com) * author: ...
- 用cocos2d-html5做的消除类游戏《英雄爱消除》(2)——Block设计实现
Block可以说是这个游戏的核心类,它除了包含自身的一些属性和方法外还添加了对触摸事件的响应. 我们先来看下源码吧 /** * Power by html5中文网(html5china.com) * ...
随机推荐
- jQuery中json中关于带有html代码网页的处理
昨天在使用jQuery的get方式请求返回json格式数据.然后使用jQuery自带的parseJSON 处理.总是出现这样的错误. 如果返回数据中content改成普通的数据可以通过.找了半天错误, ...
- springboot集成druid连接池
使用druid连接池主要有几步: 1.添加jar和依赖 <groupId>org.mybatis.spring.boot</groupId> <artifactId> ...
- 浅谈Python闭包
闭包是在其词法上下文中引用了自由变量的函数. 通俗地说,就是函数嵌套(后续称之为外层函数)另外一个函数(后续称之为内层函数),在内层函数中,引用外层函数的变量,每次对内层函数的调用,外层函数变量的值都 ...
- sublime 将打字内容放在屏幕中央
在settings user里添加一句: "scroll_past_end": true
- Hbase记录-Hbase介绍
Hbase是什么 HBase是一种构建在HDFS之上的分布式.面向列的存储系统,适用于实时读写.随机访问超大规模数据的集群. HBase的特点 大:一个表可以有上亿行,上百万列. 面向列:面向列表(簇 ...
- Dubbo协议
参考dubbo官方文档http://dubbo.apache.org/zh-cn/docs/user/references/protocol/dubbo.html dubbo共支持如下几种通信协议: ...
- vue项目首次加载过慢
vue项目优化 浅谈 Vue 项目优化 关于vue在app首次加载缓慢的解决办法 nginx开启缓存 在http部分加入 #要想开启nginx的缓存功能,需要添加此处的两行内容! #设置Web缓存区名 ...
- Solr之java操作
参考教程: http://www.cnblogs.com/xia520pi/p/3625232.html http://www.cnblogs.com/hujunzheng/p/5647896.htm ...
- 二、主目录 Makefile 分析(1)
2.1 uboot 版本号 uboot 的版本号分三个级别: VERSION:主版本号 PATCHLEVEL:次版本号,为补丁级别 SUBLEVEL:再次版本号 EXTRAVERSION:附加版本信息 ...
- android 简单的读写联系人
一.读取联系人 (1).从raw_contact表读 contact_id (2).从data表中读取data1 (3).从mimetypes读取mimetype 1.AndroidManifest. ...