P2670扫雷游戏80分,2WA求助
查看原帖
P2670扫雷游戏80分,2WA求助
327580
rand_everything楼主2022/7/29 10:02

为何80分?

#include<iostream>
using namespace std;
const int N = 10010;
int n,m;
char a[N][N];
int bomb(int x,int y){
	int cnt = 0;
	int ex[8] = {-1,0,1,-1,1,-1,0,1},ey[8] = {-1,-1,-1,0,0,1,1,1};
	for(int i = 0;i < 8;i++){
		int dx = x + ex[i],dy = y + ey[i];
		if(dx >= 0 && dx < m && dy >= 0 && dy < n && a[dx][dy] == '*'){
			cnt++;
		}
	}
	return cnt;
}
int main(){
	cin >> n >> m;
	for(int i = 0;i < n;i++){
		for(int j = 0;j < m;j++){
			cin >> a[i][j];
		}
	}
	for(int i = 0;i < n;i++){
		for(int j = 0;j < m;j++){
			if(a[i][j] == '*') cout << '*';
			else cout << bomb(i,j);
		}
		cout << endl;
	}
	return 0;
}
2022/7/29 10:02
加载中...