Codeforces Global Round 9 B. Neighbor Grid
题目链接:https://codeforces.com/contest/1375/problem/B
题意
给出一个 $n \times m$ 的方阵,每个方格中有一个非负整数,一个好方格定义如下:
- 方格中的数字等于四周数字大于 $0$ 的方格总数
可以增加任意方格中的数字任意次,判断能否将初始方阵变为全是好方格的方阵。
题解
初始方阵合法的条件:
- 四个角的方格数字不能超过 $2$
- 四条边的方格数字不能超过 $3$
- 角边外的方格数字不能超过 $4$
若初始方阵合法将每个方格中的数字变为与它相邻的方格个数即可。
代码
- #include <bits/stdc++.h>
- using namespace std;
- void solve() {
- int n, m; cin >> n >> m;
- int MP[n][m] = {};
- for (int i = 0; i < n; i++)
- for (int j = 0; j < m; j++)
- cin >> MP[i][j];
- for (int i = 0; i < n; i++) {
- for (int j = 0; j < m; j++) {
- int adj = 4 - (i == 0) - (i == n - 1) - (j == 0) - (j == m - 1);
- if (MP[i][j] > adj) {
- cout << "NO" << "\n";
- return;
- }
- MP[i][j] = adj;
- }
- }
- cout << "YES" << "\n";
- for (int i = 0; i < n; i++)
- for (int j = 0; j < m; j++)
- cout << MP[i][j] << " \n"[j == m - 1];
- }
- int main() {
- int t; cin >> t;
- while (t--) solve();
- }
Codeforces Global Round 9 B. Neighbor Grid的更多相关文章
- Codeforces Global Round 9 B. Neighbor Grid (构造,贪心)
题意:给一个\(n\)X\(m\)的矩阵,矩阵中某个数字\(k\)表示其四周恰好有\(k\)个不为0的数字,你可以使任意位置上的数字变大,如果操作后满足条件,输出新矩阵,否则输出NO. 题解:贪心,既 ...
- CodeForces Global Round 1
CodeForces Global Round 1 CF新的比赛呢(虽然没啥区别)!这种报名的人多的比赛涨分是真的快.... 所以就写下题解吧. A. Parity 太简单了,随便模拟一下就完了. B ...
- Codeforces Global Round 1 - D. Jongmah(动态规划)
Problem Codeforces Global Round 1 - D. Jongmah Time Limit: 3000 mSec Problem Description Input Out ...
- Codeforces Global Round 2 题解
Codeforces Global Round 2 题目链接:https://codeforces.com/contest/1119 A. Ilya and a Colorful Walk 题意: 给 ...
- Codeforces Global Round 1 (A-E题解)
Codeforces Global Round 1 题目链接:https://codeforces.com/contest/1110 A. Parity 题意: 给出{ak},b,k,判断a1*b^( ...
- Codeforces Global Round 3
Codeforces Global Round 3 A. Another One Bites The Dust 有若干个a,有若干个b,有若干个ab.你现在要把这些串拼成一个串,使得任意两个相邻的位置 ...
- Codeforces Global Round 1 (CF1110) (未完结,只有 A-F)
Codeforces Global Round 1 (CF1110) 继续补题.因为看见同学打了这场,而且涨分还不错,所以觉得这套题目可能会比较有意思. 因为下午要开学了,所以恐怕暂时不能把这套题目补 ...
- 【手抖康复训练1 】Codeforces Global Round 6
[手抖康复训练1 ]Codeforces Global Round 6 总结:不想复习随意打的一场,比赛开始就是熟悉的N分钟进不去时间,2333,太久没写题的后果就是:A 题手抖过不了样例 B题秒出思 ...
- Codeforces Global Round 11 个人题解(B题)
Codeforces Global Round 11 1427A. Avoiding Zero 题目链接:click here 待补 1427B. Chess Cheater 题目链接:click h ...
随机推荐
- Kali Debian 修改时区
1.KaliDebian默认读取时区文件是/etc/localtime(重建软连接,达到修改时区目的) 2./etc/localtime是个软连接,连接到时区文件/usr/share/zoneinfo ...
- 【JavaWeb】Tomcat 使用
Tomcat 使用 基础概念 JavaWeb: JavaWeb:所有通过 Java 语言编写可以通过浏览器访问的程序的总称,它是是基于请求和响应来开发的: 请求:客户端给服务器发送数据,即 Reque ...
- 2021新年 Vue3.0 + Element UI 尝鲜小记
2021年,又是新的一年,Vue 已经发布 3.0 版本,最好用的 UI 组件库 Element UI 也发布了适配 Vue3.0 的新版本,是时候开始学习一下这两个新技术. 本文主要记录了使用 Vu ...
- Spring框架之websocket源码完全解析
Spring框架之websocket源码完全解析 Spring框架从4.0版开始支持WebSocket,先简单介绍WebSocket协议(详细介绍参见"WebSocket协议中文版" ...
- C++中的extern“C”
首先引入extern"C"的官方解释 extern "C" is meant to be recognized by a C++ compiler and to ...
- 求得二叉搜索树的第k小的元素
求得二叉搜索树的第k小的元素 给定一个二叉搜索树,编写一个函数 kthSmallest 来查找其中第 k 个最小的元素. 须知:二叉搜索树,又叫二叉排序树,二叉查找树.特点是:左子树的所有元素都小于等 ...
- 自翻------Office 2013 RT 使用说明
Office Home and Student 2013 RT Preview的更新 介绍 Microsoft已发布Microsoft Office Home and Student 2013 RT ...
- 控制tomcat日志文件的输出到catalina.out
在catalina.sh中直接把下面的内容注释掉即可:
- pytest:通过scope控制fixture的作用范围
一.fixture里面有个参数scope,通过scope可以控制fixture的作用范围,根据作用范围大小划分:session>module>class>function,具体作用范 ...
- windows2012-2016亲测安装mysql8.0
先去官网下载点击的MySQL的下载 下载完成后解压 解压完是这个样子 不要手动创建Data文件夹和my.ini文件, cmd命令窗口进入bin目录,如果已经做了环境变量那随意在哪里打开. mysqld ...