Run ID 作者 问题 语言 测评结果 Time Memory 代码长度 提交时间
140300 胡海峰老师 扫雷游戏 C++ Accepted 4 MS 292 KB 1429 2025-12-13 19:21:49

Tests(10/10):


Code:

#include <iostream> using namespace std; int main() { int n, m; cin >> n >> m; char grid[100][100]; char result[100][100]; // 读取输入 for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { cin >> grid[i][j]; } } // 8个方向偏移量 int dx[] = {-1, -1, -1, 0, 0, 1, 1, 1}; int dy[] = {-1, 0, 1, -1, 1, -1, 0, 1}; // 处理每个格子 for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { if (grid[i][j] == '*') { result[i][j] = '*'; } else { int count = 0; // 遍历8个方向 for (int d = 0; d < 8; d++) { int ni = i + dx[d]; int nj = j + dy[d]; // 检查边界 if (ni >= 0 && ni < n && nj >= 0 && nj < m) { if (grid[ni][nj] == '*') { count++; } } } result[i][j] = count + '0'; } } } // 输出结果 for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { cout << result[i][j]; } cout << endl; } return 0; }