当前位置: 首页 > news >正文

NOIP 2015 扫雷(mine)

扫雷(mine)

说明

扫雷游戏是一款十分经典的单机小游戏。在 n行 m 列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格)。玩家翻开一个非地雷格时,该格将会出现一个数字——提示周围格子中有多少个是地雷格。游戏的目标是在不翻出任何地雷格的条件下,找出所有的非地雷格。
现在给出n行m列的雷区中的地雷分布,要求计算出每个非地雷格周围的地雷格数。
注:一个格子的周围格子包括其上、下、左、右、左上、右上、左下、右下八个方向上与之直接相邻的格子。

输入格式

输入文件第一行是用一个空格隔开的两个整数n和m,分别表示雷区的行数和列数。
接下来 n行,每行m 个字符,描述了雷区中的地雷分布情况。字符’*’表示相应格子是地雷格,字符’?’表示相应格子是非地雷格。相邻字符之间无分隔符。

输出格式

输出文件包含 n 行,每行 m 个字符,描述整个雷区。用’*’表示地雷格,用周围的地雷个数表示非地雷格。相邻字符之间无分隔符。

样例

输入数据 1

3 3
*??
???
?*?
Copy

输出数据 1

*10
221
1*1
Copy

数据范围

对于 100%的数据,1≤n≤100,1≤m≤100。
    </div></div></div>
#include<bits/stdc++.h>
using namespace std;
long long q,w,e,r,t,y,u,i,o,p,s,f,g,h,j,k,l,m,n,v,x,z,kk;
char b[1000][1000];
int a[1000][1000];
int c[1000];
int d[1000];
string ss;
int main()
{cin>>n>>m;for(i=1;i<=n;i++){for(j=1;j<=m;j++){cin>>b[i][j];}}for(i=1;i<=n;i++){for(j=1;j<=m;j++){if(b[i][j]=='*')a[i][j]=-1;}}for(i=1;i<=n;i++){for(j=1;j<=m;j++){if(a[i][j]!=-1){if(a[i+1][j+1]==-1)a[i][j]++;if(a[i-1][j-1]==-1)a[i][j]++;if(a[i][j+1]==-1)a[i][j]++;if(a[i+1][j]==-1)a[i][j]++;if(a[i][j-1]==-1)a[i][j]++;if(a[i-1][j]==-1)a[i][j]++;if(a[i-1][j+1]==-1)a[i][j]++;if(a[i+1][j-1]==-1)a[i][j]++;}}}for(i=1;i<=n;i++){for(j=1;j<=m;j++){if(a[i][j]!=-1)cout<<a[i][j];else cout<<"*";}cout<<endl;}return 0;
}
http://www.lryc.cn/news/130194.html

相关文章:

  • elaticsearch(3)
  • DevOps系列文章 之 Gitlab+Docker自动部署SpringBoot
  • React Native 列表组件基础知识
  • 操作系统的体系结构、内核、虚拟机
  • 【C++】vector的基本用法
  • SSM——用户、角色、权限操作
  • UI界面设置
  • 论文学习——PixelSNAIL:An Improved Autoregressive Geenrative Model
  • mySQL 视图 VIEW
  • 「UG/NX」Block UI 曲线收集器CurveCollector
  • 微信小程序:函数节流与函数防抖
  • Mathematica(42)-计算N个数值的和
  • 安装和配置 Ansible
  • 电脑系统重装日记
  • 通讯协议044——全网独有的OPC HDA知识一之聚合(十二)持续坏值时间
  • Docker:Windows container和Linux container
  • excel提示更新外部引用文件 这个提示能手动禁用
  • 2023 最新 小丫软件库app开源源码 PHP后端
  • Selenium 测试用例编写
  • es自定义分词器支持数字字母分词,中文分词器jieba支持添加禁用词和扩展词典
  • 基于libevent的tcp服务器
  • 【TypeScript】tsc -v 报错 —— 在此系统上禁止运行脚本
  • 【C++】STL---list
  • 六、分组背包
  • LangChain入门:构建LLM驱动的应用程序的初学者指南
  • gitlab修改远程仓库地址
  • VB+SQL自动点歌系统设计与实现
  • 设计模式之适配器模式(Adapter)的C++实现
  • C#系统锁屏事件例子 - 开源研究系列文章
  • R语言实现免疫浸润分析(2)