Re: [閒聊] 每日LeetCode

看板Marginalman作者 (みけねこ的鼻屎)時間1年前 (2024/01/03 13:36), 編輯推噓1(101)
留言2則, 2人參與, 1年前最新討論串593/719 (看更多)
https://leetcode.com/problems/number-of-laser-beams-in-a-bank/description 2125. Number of Laser Beams in a Bank 給你一個字串陣列bank[]表示的2D矩陣,裡面只有0和1,表示該位置是否有防盜裝置,當 下列情形滿足時,兩個防盜裝置會產生一個雷射: 1.防盜裝置在不同列 2.列之間不存在任何防盜裝置 求出擺放之後會產生的雷射數量。 思路: 1.檢查所有列往上碰到的第一個存在防盜裝置的列共有幾個裝置,把他和當前列的裝置 數量相乘即可得到產生的雷射數量,只記住先前裝置數量大於0的列,遍歷每一列即可。 Java Code: --------------------------------------------------- class Solution { public int numberOfBeams(String[] bank) { int res = 0; int prevRow = 0; for (String s : bank) { int currRow = count(s); res += currRow * prevRow; if (currRow > 0) { prevRow = currRow; } } return res; } private int count(String row) { int cnt = 0; for (char c : row.toCharArray()) { cnt += c - '0'; } return cnt; } } --------------------------------------------------- -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.100.73.13 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1704260167.A.486.html

01/03 13:37, 1年前 , 1F
怎麼不用Kotlin
01/03 13:37, 1F

01/03 13:38, 1年前 , 2F
為啥要用
01/03 13:38, 2F
文章代碼(AID): #1bbF97I6 (Marginalman)
討論串 (同標題文章)
文章代碼(AID): #1bbF97I6 (Marginalman)