当前位置: 首页 > news >正文 企业网站重要性大都会app下载二维码 news 2025/10/21 19:08:27 企业网站重要性,大都会app下载二维码,金华网站建设明细报价表,微博带动网站做排名三.P2670 [NOIP2015 普及组] 扫雷游戏 题目背景 NOIP2015 普及组 T2 题目描述 扫雷游戏是一款十分经典的单机小游戏。在 n 行 m列的雷区中有一些格子含有地雷#xff08;称之为地雷格#xff09;#xff0c;其他格子不含地雷#xff08;称之为非地雷格#xff09;。玩…三.P2670 [NOIP2015 普及组] 扫雷游戏 题目背景 NOIP2015 普及组 T2 题目描述 扫雷游戏是一款十分经典的单机小游戏。在 n 行 m列的雷区中有一些格子含有地雷称之为地雷格其他格子不含地雷称之为非地雷格。玩家翻开一个非地雷格时该格将会出现一个数字——提示周围格子中有多少个是地雷格。游戏的目标是在不翻出任何地雷格的条件下找出所有的非地雷格。 现在给出 n行 m列的雷区中的地雷分布要求计算出每个非地雷格周围的地雷格数。 注一个格子的周围格子包括其上、下、左、右、左上、右上、左下、右下八个方向上与之直接相邻的格子。 输入格式 第一行是用一个空格隔开的两个整数 n和 m分别表示雷区的行数和列数。 接下来 n 行每行 m个字符描述了雷区中的地雷分布情况。字符 * 表示相应格子是地雷格字符 ? 表示相应格子是非地雷格。相邻字符之间无分隔符。 输出格式 输出文件包含 n行每行 m 个字符描述整个雷区。用 *表示地雷格用周围的地雷个数表示非地雷格。相邻字符之间无分隔符。 样例 #1 样例输入 #1 3 3 *?? ??? ?*?样例输出 #1 *10 221 1*1样例 #2 样例输入 #2 2 3 ?*? *??样例输出 #2 2*1 *21算法思路 输出的结果需要地雷(也就是*原样输出)而地方则输出地雷数。中间的数算 上、下、左、右、左上、右上、左下、右下八个方向 的地雷数当然好算但是边界的数该如何解决呢 我的思路是将输入的原数组周围在套上一层。我这边是都补的字符 0 自己画的理解就好)那么三行三列的数组就变成了五行五列同样的两行三列变成了四行五列。总结就是将行和列都 2 就可以了。这样边界问题就可以很轻松的解决了。每个格子都有八个方向了。当遇到 0 时直接不管就行。 // 为了加上虚拟边界创建大小为 (n2) x (m2) 的 ch 数组 char[][] ch new char[n 2][m 2]; // 边界填充的数组 char[][] res new char[n][m]; // 存储计算结果的数组读取输入数据并填充到 ch[1] 到 ch[n] 中 //这里不能这样写困扰我好久一直报ArrayIndexOutOfBoundsException,原因是toCharArray方法将字符串转化为字符数组时是从下标为0开始的,而不是1。for (int i 1; i n; i) {String line scan.nextLine();ch[i] line.toCharArray();}首先我们来说明下toCharArray toCharArray() 是 Java 中 String 类的一个方法用于将字符串转换为字符数组char[]。它的返回值是一个包含字符串中所有字符的数组每个字符都被存储在数组的相应位置。 当自动字符串转字符时是从下标0开始的但是我们的下标为0 的是虚拟数组的边界。这样就导致有个位置的数组是空的。 ArrayIndexOutOfBoundsException 是 Java 中的一种运行时异常表示数组下标越界异常。当你尝试访问数组中不存在的索引时就会抛出这个异常。 如图就会有三个位置为null导致异常。 //改成逐一赋值就没问题了。for (int i 1; i n; i) { // 从 1 到 n 填充数据String line scan.nextLine(); // 读取输入的一行for (int j 0; j m; j) {ch[i][j 1] line.charAt(j); // 将字符逐个赋值到 ch[i][j1]}}默默吐槽一句java真不适合写算法。 代码 import java.util.Arrays; import java.util.Scanner;public class P2670 {public static void main(String[] args) {Scanner scan new Scanner(System.in);int n scan.nextInt(); // 行数int m scan.nextInt(); // 列数scan.nextLine(); // 消耗掉换行符// 为了加上虚拟边界创建大小为 (n2) x (m2) 的 ch 数组char[][] ch new char[n 2][m 2]; // 边界填充的数组char[][] res new char[n][m]; // 存储计算结果的数组// 初始化二维数组将所有元素填充为 0for (int i 0; i n 2; i) {Arrays.fill(ch[i], 0); // 也可以写两个循环 // for (int j 0; j n 2; j) { // ch[i][j] 0; // }}// 读取输入数据并填充到 ch[1] 到 ch[n] 中for (int i 1; i n; i) { // 从 1 到 n 填充数据String line scan.nextLine(); // 读取输入的一行for (int j 0; j m; j) {ch[i][j 1] line.charAt(j); // 将字符逐个赋值到 ch[i][j1]}}// 计算每个位置周围的星号数for (int i 1; i n; i) {for (int j 1; j m; j) {int count 0;if (ch[i][j] *) {res[i - 1][j - 1] *; // 如果当前位置是星号直接赋值} else {// 遍历当前位置周围的 3x3 区域for (int k i - 1; k i 1; k) {for (int l j - 1; l j 1; l) {if (ch[k][l] *) {count; // 计算周围星号的数量}}}res[i - 1][j - 1] (char) (count 0); // 将数量转换为字符并存储}}}// 输出结果for (int i 0; i n; i) {for (int j 0; j m; j) {System.out.print(res[i][j]); // 打印每个字符不换行}System.out.println(); // 每行输出后换行}} }嘿嘿嘿 文章转载自: http://www.morning.wpxfk.cn.gov.cn.wpxfk.cn http://www.morning.zztkt.cn.gov.cn.zztkt.cn http://www.morning.lpnpn.cn.gov.cn.lpnpn.cn http://www.morning.gnmhy.cn.gov.cn.gnmhy.cn http://www.morning.qxrct.cn.gov.cn.qxrct.cn http://www.morning.rnpnn.cn.gov.cn.rnpnn.cn http://www.morning.ghcfx.cn.gov.cn.ghcfx.cn http://www.morning.fnpmf.cn.gov.cn.fnpmf.cn http://www.morning.nkqrq.cn.gov.cn.nkqrq.cn http://www.morning.lcwhn.cn.gov.cn.lcwhn.cn http://www.morning.qsy38.cn.gov.cn.qsy38.cn http://www.morning.mcjxq.cn.gov.cn.mcjxq.cn http://www.morning.xkzr.cn.gov.cn.xkzr.cn http://www.morning.xdlwm.cn.gov.cn.xdlwm.cn http://www.morning.kkjhj.cn.gov.cn.kkjhj.cn http://www.morning.xjnw.cn.gov.cn.xjnw.cn http://www.morning.ldcrh.cn.gov.cn.ldcrh.cn http://www.morning.rrxgx.cn.gov.cn.rrxgx.cn http://www.morning.ckfyp.cn.gov.cn.ckfyp.cn http://www.morning.qnzk.cn.gov.cn.qnzk.cn http://www.morning.xdmsq.cn.gov.cn.xdmsq.cn http://www.morning.pgfkl.cn.gov.cn.pgfkl.cn http://www.morning.rjrh.cn.gov.cn.rjrh.cn http://www.morning.bslkt.cn.gov.cn.bslkt.cn http://www.morning.iqcge.com.gov.cn.iqcge.com http://www.morning.rqjfm.cn.gov.cn.rqjfm.cn http://www.morning.flpjy.cn.gov.cn.flpjy.cn http://www.morning.jgykx.cn.gov.cn.jgykx.cn http://www.morning.ylyzk.cn.gov.cn.ylyzk.cn http://www.morning.qpmwb.cn.gov.cn.qpmwb.cn http://www.morning.sjqpm.cn.gov.cn.sjqpm.cn http://www.morning.tbbxn.cn.gov.cn.tbbxn.cn http://www.morning.ghkgl.cn.gov.cn.ghkgl.cn http://www.morning.bfrsr.cn.gov.cn.bfrsr.cn http://www.morning.slmbg.cn.gov.cn.slmbg.cn http://www.morning.qzsmz.cn.gov.cn.qzsmz.cn http://www.morning.xsfg.cn.gov.cn.xsfg.cn http://www.morning.ymdhq.cn.gov.cn.ymdhq.cn http://www.morning.jcwrb.cn.gov.cn.jcwrb.cn http://www.morning.qbdsx.cn.gov.cn.qbdsx.cn http://www.morning.kpbq.cn.gov.cn.kpbq.cn http://www.morning.rdlfk.cn.gov.cn.rdlfk.cn http://www.morning.bmzxp.cn.gov.cn.bmzxp.cn http://www.morning.dzqyn.cn.gov.cn.dzqyn.cn http://www.morning.zpkfb.cn.gov.cn.zpkfb.cn http://www.morning.ywqw.cn.gov.cn.ywqw.cn http://www.morning.sfcfy.cn.gov.cn.sfcfy.cn http://www.morning.gklxm.cn.gov.cn.gklxm.cn http://www.morning.xpzgg.cn.gov.cn.xpzgg.cn http://www.morning.clpdm.cn.gov.cn.clpdm.cn http://www.morning.bssjp.cn.gov.cn.bssjp.cn http://www.morning.qzpsk.cn.gov.cn.qzpsk.cn http://www.morning.yktr.cn.gov.cn.yktr.cn http://www.morning.hhpkb.cn.gov.cn.hhpkb.cn http://www.morning.pmftz.cn.gov.cn.pmftz.cn http://www.morning.fkwp.cn.gov.cn.fkwp.cn http://www.morning.ybnps.cn.gov.cn.ybnps.cn http://www.morning.tndxg.cn.gov.cn.tndxg.cn http://www.morning.nngq.cn.gov.cn.nngq.cn http://www.morning.rxwnc.cn.gov.cn.rxwnc.cn http://www.morning.jmbgl.cn.gov.cn.jmbgl.cn http://www.morning.rjnx.cn.gov.cn.rjnx.cn http://www.morning.jglqn.cn.gov.cn.jglqn.cn http://www.morning.kdrjd.cn.gov.cn.kdrjd.cn http://www.morning.ejknty.cn.gov.cn.ejknty.cn http://www.morning.dansj.com.gov.cn.dansj.com http://www.morning.pmdzd.cn.gov.cn.pmdzd.cn http://www.morning.knmp.cn.gov.cn.knmp.cn http://www.morning.bwznl.cn.gov.cn.bwznl.cn http://www.morning.wtdyq.cn.gov.cn.wtdyq.cn http://www.morning.wbns.cn.gov.cn.wbns.cn http://www.morning.mkygc.cn.gov.cn.mkygc.cn http://www.morning.qhfdl.cn.gov.cn.qhfdl.cn http://www.morning.nbdtdjk.cn.gov.cn.nbdtdjk.cn http://www.morning.sbqrm.cn.gov.cn.sbqrm.cn http://www.morning.frfpx.cn.gov.cn.frfpx.cn http://www.morning.wqpr.cn.gov.cn.wqpr.cn http://www.morning.pzdxg.cn.gov.cn.pzdxg.cn http://www.morning.pjftk.cn.gov.cn.pjftk.cn http://www.morning.rrgm.cn.gov.cn.rrgm.cn 查看全文 http://www.tj-hxxt.cn/news/237619.html 相关文章: 建设网站计划书开发公司土地评估费计入土地价款 仿历史网站模板如何制作微信链接推广 微信做的地方门户网站腾讯微信网站建设价格 石家庄做网站最好的公司哪家好个体工商户如何注销 山西省建设厅入晋备案网站it运维主要做什么 做网站服务好写作网站哪个好 深圳建站网站重庆做网站的公司有哪些 上海网站建设哪家好做网站会很忙吗 适合美工的设计网站沈阳网站企业 网站开发视频资源放哪儿网站怎么销售 建筑模板厂家联系方式给网站做seo的必要性 lol做视频那个网站好网站备案被注销了 站长工具乱码绿色环保材料网站模板下载 p2c网站方案洛阳兼职网站 网站优化主旨凤凰网站建设公司 马云的网站是谁建设的重庆城乡建设信息网 pc网站 手机网站 微信网站 上海有经验的企业网站建设 林芝做网站263邮箱企业邮箱入口 建筑标准下载网站吉林省电子健康卡app 网站建设忄金手指花总建网站非要做外链吗 服务类网站建设苏州地区网站制作 建设一个淘宝客网站vrchat视频转码 外部网站链接怎么做wordpress修改主题图片路径 南宁伯才网络公司做网站好吗有关网站建设的文章句子 建筑网站网页设计电力建设规范下载网站 陕西网站备案 多久如何自己制作链接内容 做自媒体查找素材的网站嘉兴自助建网站 深圳网站建设分期付网站到期续费通知 php网站开发个人个人开通微信小程序 如何做流量充值网站网站需求建设关系书