文章

81

粉丝

0

获赞

282

访问

11.0k

头像
扫雷游戏 题解:
P5263 浙江工商大学2023年机试题
发布于2025年3月15日 19:46
阅读数 205

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n,m,i,j,k,x,y,sum;
	char sn[1000][1000];
	char ans[1000][1000];
	cin>>n>>m;
	for(i=0;i<n;i++){
		for(j=0;j<n;j++){
			cin>>sn[i][j];
		}
	}
	int dx[] = {-1, -1, -1, 0, 0, 1, 1, 1};
    int dy[] = {-1, 0, 1, -1, 1, -1, 0, 1};
	for(i=0;i<n;i++){
		for(j=0;j<n;j++){
			sum=0;
			if(sn[i][j] == '*'){
				ans[i][j] = '*';
				continue;
			}
			for(k=0;k<8;k++){
				x = i + dx[k];
				y = j + dy[k];
				if(sn[x][y]=='*'&&x>=0&&x<n&&y>=0&&y<m){
					sum++;
				}
			}
			ans[i][j]=sum+'0';
		}
	}
	for(i=0;i<n;i++){
		for(j=0;j<n;j++){
			cout<<ans[i][j]<<" ";
		}
		cout<<endl;
	}
	return 0;

}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发