首页 > 扫雷
头像 RoseBlue
发表于 2022-03-05 21:46:42
这道题目就难在怎么进行判断。其实就是一个九宫格判断,判断周围8个格子是否为*. 难点在于边缘的位置没法进行九宫格判断,使用呢,要把棋盘扩大一圈。 我的代码如下 #include <stdlib.h> #include <stdio.h> int main() { int 展开全文
头像 GUYIJUN
发表于 2022-07-01 17:22:38
这一题其实很简单,只要将每一个有雷的格子周围的888个格子的答案全部+1+1+1,最后输出的时候判断是不是有雷,有雷则输出*,无雷就直接输出答案。 我的AC\text{\color{green}{AC}}AC代码: #include <bits/stdc++.h> using names 展开全文
头像 楠舍
发表于 2022-11-13 22:17:39
扫雷 我们总共要有m*n个字符要放进去 要有一个棋盘 但为了估计最边缘的棋子,所以要创建一个n+2行,m+2列的棋盘 具体看代码 #include <stdio.h> int main() {    &n 展开全文
头像 饥饿的大魔王
发表于 2023-05-27 20:21:35
#include <stdio.h> int main() { int count = 0; int n, m; scanf("%d%d", &n, &m); //吃掉回车 getchar(); char arr[1000][1000]; for (int i = 0; i 展开全文
头像 fox鱼
发表于 2023-12-05 23:34:05
#include <stdio.h> int main() { int n, m; scanf("%d%d", &n, &m); char arr[1000][1000]={0};//如果这里写arr[n+2][m+2]的话不 展开全文
头像 局外人李逍遥
发表于 2022-07-29 01:54:22
暴力解法! 这代码有点长。但思路很容易理解,根据题意,如何判断多少颗雷,是根据相邻八颗而定的,但是边界和顶点周围并没有八颗。怎么办呢?我想到的是将四个顶点单独处理,边界单独处理,剩下的就是中间的有相邻八颗的。 于是我开始写代码,但在写的过程中,我发现并没法像我想的那样简单分为三种,除了中 展开全文
头像 zhangxume
发表于 2022-03-30 20:28:35
看了其他人的思路,把矩阵向外扩展即可访问任意8个方向 n,m = map(int,input().split()) mat = ['-'*(m+2)] for i in range(n): mat.append('-' + input() + '-') add = ['-'*m] mat.a 展开全文
头像 江街
发表于 2023-07-17 10:42:29
#include <stdio.h> int main() { int n,m; scanf("%d %d",&n,&m); char arr[1001][1001]={0}; for(int i=1;i<=n; 展开全文
头像 GLC
发表于 2022-08-20 21:02:52
#include<stdio.h> int get_count(char arr[1001][1001], int i, int j) {     if (arr[i][j]&n 展开全文
头像 Zerone·
发表于 2022-05-26 16:40:53
">int output(int x, int y, int z, int k, char ch[][k]) { int count = 0; //在当前值周围进行循环判断 for (int i = x - 1; i <= x + 1; i++) { f 展开全文