题目分析



来源:acwing

分析:

本题类似消消乐,同一行或者同一列满足3个或者更多个同色的可以消除(数值置为0),由于数据量比较小,时间复杂度可以到O(n3)O(n^3)O(n3).

这里是对每个点,统计和它同色的点,最左边能到哪里,最右边能到哪里,最上面能到哪里,最下面能到哪里。使用四个while循环。这是对每个点的操作,需要对图中每个点都进行这种操作,在本题的数据量下,可以过。

AC代码

#include<bits/stdc++.h>
using namespace std;
const int N = 40;
int g[N][N];
bool st[N][N];int n, m;int main(){cin >> n >> m;for(int i = 0; i < n; i ++)for(int j = 0; j < m; j ++)cin >> g[i][j];for(int i = 0; i < n; i ++){for(int j = 0; j < m; j ++){int l = j, r = j, u = i, d = i, x = g[i][j];/*以找到3个2为例:下标:0 1 2 3 4 5 6值:  1 2 2 2 3 2 4l的下标:0r的下标:4实际2的长度:3推出长度公式: r - l - 1*/while(l >= 0 && g[i][l] == x) l --; // 减到答案左边1个格while(r < m  && g[i][r] == x) r ++; // 加到答案右边1个格while(u >= 0 && g[u][j] == x) u --;while(d < n && g[d][j] == x ) d ++;// 左右方向是否大于3,上下方向是否大于3st[i][j] =  r - l  -1 >= 3 ||  d - u - 1 >= 3;}}for(int i = 0; i < n; i ++){for(int j = 0; j < m; j ++)if(st[i][j]) cout << 0<<" ";else cout <<g[i][j] <<" ";cout << endl;}
}

题目链接

https://www.acwing.com/problem/content/3226/

CSP认证201512-2 消除类游戏[C++题解]:模拟相关推荐

  1. csp试题2:消除类游戏

    csp试题2:消除类游戏 题目 分析 代码 总结 题目 问题描述       消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋 ...

  2. CCF- CSP201512-2消除类游戏 满分题解

    CCF- CSP201512-2消除类游戏 满分题解 题目链接:201512-2消除类游戏 思路: 设置ans二维数组记录该坐标的位置的点是否可以被删除 分行和列单独讨论,分别记录起点位置和终点位置, ...

  3. CCF CSP 消除类游戏

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

  4. CCF CSP 201512-2 消除类游戏(C++语言100分)

    1. 问题链接:CCF 201512-2 消除类游戏 试题编号: 201512-2 试题名称: 消除类游戏 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 消除类游戏是深受大众 ...

  5. csp 201512-2 消除类游戏

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

  6. 消除类游戏201512(C语言版)

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

  7. CCF计算机软件能力认证试题练习:201512-2 消除类游戏

    消除类游戏 来源: 标签: 参考资料: 相似题目: 题目 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有 ...

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

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

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

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

最新文章

  1. 第十五课.马尔科夫链蒙特卡洛方法
  2. 机器学习算法------2.11 模型的保存和加载(joblib.dump()、joblib.load())
  3. dbunit java_Java – 让DbUnit使用Hibernate事务
  4. final类是否可以被代理_设计模式——代理模式
  5. SpringBoot 自带工具类~断言
  6. visual studio无法更新_VS Code Python 扩展 5 月更新
  7. Linux PWN从入门到熟练
  8. plsql只提交存储过程里的事务_plsql 存储过程 事务
  9. SAP License:SAP在线帮助的实现
  10. 干货 | 科研大牛们怎么读文献?
  11. 英特尔移动CPU参数表
  12. 视频教程-汇编语言程序设计-其他
  13. gradle教程java_gradle入门到精通视频教程 下载
  14. [Google标准文档]如何做好代码评审
  15. 论文阅读(Multimodal Dialog Systems via Capturing Context-aware Dependencies of Semantic Elements)
  16. Kerberos原理
  17. 易飞8无销售报价的BOM成本参考
  18. 2019年中国PPP管理库全项目数据
  19. 不可逆加密算法MD5 SHA与可逆加密算法Base64
  20. Altium Designer入门学习笔记和快捷键整理

热门文章

  1. linux 系统优化初始化配置
  2. Jquery中css()方法获取边框长度
  3. .NET 将数据输出到WORD、EXCEL、TXT、HTM
  4. 【.Net Micro Framework PortingKit(补) – 1】USB驱动开发
  5. Will Wright总是能给我们带来惊奇啊
  6. redis主从复制如何保证数据一致性_面试官:Redis 主从复制时网络开小差了怎么整?...
  7. php 格式化html,HTML代码如何格式化
  8. 【Paper】2020_含时延约束的多智能体系统二分一致性
  9. 5.3 核函数-机器学习笔记-斯坦福吴恩达教授
  10. DFT实际应用-User-Defined Test Points Example