日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

把握不好数组边界的危害(记洛谷P1789题RE+WA的经历,Java语言描述)

發布時間:2025/3/15 java 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 把握不好数组边界的危害(记洛谷P1789题RE+WA的经历,Java语言描述) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題目描述

整體分析

先讀取第一行的三個數,再設計算法。
這里我比較笨,沒有用什么好的算法,卻也沒厚著臉皮直接完全暴力求解……(不過還是暴力解法)

數據結構的話,N×N的boolean數組即可,乍一看是不可避免的。

對于螢石,就是很簡單啦,直接開雙層循環就完事,構成一個5×5方陣即可。
對于火把,就需要先處理~~

我們分別對黑色圈內的和非黑色圈內的部分進行處理即可。

注意細節

細節分析起來挺曲折的,雖然這題還是不難。

需要注意的是數組越界,在Java里用了二維數組還涉及邊界情況,就跑不開ArrayIndexOutOfBoundsException,必須對邊界情況詳細分析。

另需要注意的是我們用的數組是[0 ~ N-1][0 ~ N-1],然而輸入的是1 ~ N,這個一定不要搞錯了呀。

自測WA

按照提供的測試用例測試,結果應該是12,打印的是16,多了4個,于是發現bug在與我沒看清楚“火把”的7、9、17、19四個位置是true(亮的),于是乎,修復。

不斷的自測,感覺良好,提交去~~

第一次提交——RE+WA


分析一下為啥WA,其實發現就是上面說的那個問題,沒理解清楚給的測試數據其實是我們人類計數的方式(從1開始),從而處理錯了。

再分析RE,運行時的異常一般來說這里就是數組越界了,讀讀代碼看不出來,那就測試邊界。

發現是-1越界,就找代碼,發現這個:

其實想想也是,既然是合理的算法,為啥會重復報warning呢,必是Ctrl+V的時候沒改好……
修復:

再次提交~~

第二次提交——RE


沒WA證明思路基本OK,RE就還是數組越界,很煩人……

于是想到自己的測試在矩陣左上角測的,右下角沒測試,補測一下:

太真實了,真的錯了,55555~~

修復一下:

反復測試,覺得真的ok了,最終提交~~

第三次提交——AC


好開心啊!(雖然這題初中一年級水平,wtcl~~)

AC代碼(Java)

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);//矩陣大小參數int matrixLen = scanner.nextInt();//火把數int torchNum = scanner.nextInt();//螢石數int candNum = scanner.nextInt();//創建矩陣boolean[][] matrix = new boolean[matrixLen][matrixLen];//填充火把可以照亮的位置for (int i = 0; i < torchNum; i++) {int x = scanner.nextInt() - 1;int y = scanner.nextInt() - 1;//左不越界if (x - 1 >= 0) {//左不越界+上不越界if (y - 1 >= 0) {matrix[x-1][y-1] = true;}//左不越界+下不越界if (y + 1 < matrixLen) {matrix[x-1][y+1] = true;}}//右不越界if (x + 1 < matrixLen) {//右不越界+上不越界if (y - 1 >= 0) {matrix[x+1][y-1] = true;}//右不越界+下不越界if (y + 1 < matrixLen) {matrix[x+1][y+1] = true;}}for (int j = 0; j <= 2; j++) {//左不越界if (x - j >= 0) {matrix[x-j][y] = true;}//右不越界if (x + j < matrixLen) {matrix[x+j][y] = true;}//上不越界if (y - j >= 0) {matrix[x][y-j] = true;}//下不越界if (y + j < matrixLen) {matrix[x][y+j] = true;}}}//填充螢石可以照亮的位置for (int i = 0; i < candNum; i++) {int x = scanner.nextInt() - 1;int y = scanner.nextInt() - 1;for (int j = 0; j <= 2; j++) {if (x - j >= 0) {for (int k = 0; k <= 2; k++) {if (y - k >= 0) {matrix[x-j][y-k] = true;}if (y + k < matrixLen) {matrix[x-j][y+k] = true;}}}if (x + j < matrixLen) {for (int k = 0; k <= 2; k++) {if (y - k >=0) {matrix[x+j][y-k] = true;}if (y + k < matrixLen) {matrix[x+j][y+k] = true;}}}}}//計算數量int count = 0;for (int i = 0; i < matrixLen; i++) {for (int j = 0; j < matrixLen; j++) {if (!matrix[i][j]) {count++;}}}System.out.println(count);//關閉輸入流scanner.close();} }

說明

寫OJ寫得少,寫的就很臃腫,還望dl們不吝賜教~~
OrzOrz

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的把握不好数组边界的危害(记洛谷P1789题RE+WA的经历,Java语言描述)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲涩涩涩 | 三级理论电影 | 无码内射中文字幕岛国片 | 99精品久久毛片a片 成人网一区 | 国产jk精品白丝av在线观看 | 91原创视频在线观看 | 九九热这里都是精品 | 久久久久久夜 | 少妇aa| 天天综合天天添夜夜添狠狠添 | 高清国产一区二区三区四区五区 | 亚洲色成人网站www永久四虎 | 九九久久久 | 解开乳罩喂领导吃奶 | 超碰免费在线播放 | 黄色小视频网 | 二区三区av | 久久久www | 一本色道久久综合亚洲精品酒店 | 天堂久久精品 | 波多野结衣a级片 | 国产超碰在线观看 | 日韩欧av | 麻豆性视频 | 丰满人妻一区二区三区53 | 亚洲欧美日韩久久精品 | 精品无码av一区二区三区 | 99性视频| 伊人99在线 | 国产精品视频全国免费观看 | 国产精品成人一区二区三区电影毛片 | 足疗店女技师按摩毛片 | 久久96 | 亚洲国产一区二区三区 | 男女在线免费观看 | 国产96在线| 少妇av片 | 亚洲一区欧美激情 | 黄色美女毛片 | 久久99精品久久久久子伦 | 99国产精品久久久 | 欧美激情一区二区 | 精品视频久久久久 | 久久久久久福利 | 国产精品久久色 | 国产91精品露脸国语对白 | 亚洲一区中文字幕永久在线 | 美女福利视频在线 | 在线一本| 女儿的朋友5中汉字晋通话 欧美成人免费高清视频 | 91成年人视频 | 91福利在线播放 | 成年人视频在线免费观看 | 在线观看中文字幕 | 严厉高冷老师动漫播放 | 麻豆精品久久久久久久99蜜桃 | 国产喷水福利在线视频 | 日批在线播放 | 永久免费,视频 | 丰满岳妇伦在线播放 | 亚洲色图36p | 99热在线观看免费精品 | 开心激情综合 | 日韩少妇内射免费播放18禁裸乳 | 日日爱夜夜操 | 精品aaa | 狠狠躁天天躁综合网 | 日本大胆裸体做爰视频 | 丁香花国语版普通话 | 欧美福利视频 | 婷婷在线播放 | 九九视频精品在线 | 三男一女吃奶添下面 | 嫩草影院懂你的 | 日韩久久久久久久久久 | 麻豆av影院 | 在线天堂一区 | 久插视频 | 一道本久在线中文字幕 | 91第一页 | 日日嗨av一区二区三区四区 | 91久久国产视频 | 丁香婷婷久久久综合精品国产 | 国产一区二区视频免费观看 | 麻豆av电影在线观看 | 污视频网站免费在线观看 | 国模av| 狼人久久 | 久久久一区二区三区 | 亚洲成人精品在线播放 | av网站免费在线观看 | 欧美日韩一卡二卡三卡 | 久草资源在线 | 日本少妇色视频 | 91热爆视频 | 免费黄色网址观看 | 熟女少妇a性色生活片毛片 亚洲伊人成人网 | 亚洲精品一区二区口爆 | 男人天堂色 |