LeetCode 2125.銀行中的激光束數量

銀行內部的防盜安全裝置已經激活。給你一個下標從 0 開始的二進制字符串數組 bank ,表示銀行的平面圖,這是一個大小為 m x n 的二維矩陣。 bank[i] 表示第 i 行的設備分布,由若干 ‘0’ 和若干 ‘1’ 組成。‘0’ 表示單元格是空的,而 ‘1’ 表示單元格有一個安全設備。

對任意兩個安全設備而言,如果同時 滿足下面兩個條件,則二者之間存在 一個 激光束:

兩個設備位于兩個 不同行 :r1 和 r2 ,其中 r1 < r2 。
滿足 r1 < i < r2 的 所有 行 i ,都 沒有安全設備 。
激光束是獨立的,也就是說,一個激光束既不會干擾另一個激光束,也不會與另一個激光束合并成一束。

返回銀行中激光束的總數量。

示例 1:
在這里插入圖片描述

輸入:bank = [“011001”,“000000”,“010100”,“001000”]
輸出:8
解釋:在下面每組設備對之間,存在一條激光束。總共是 8 條激光束:

  • bank[0][1] – bank[2][1]
  • bank[0][1] – bank[2][3]
  • bank[0][2] – bank[2][1]
  • bank[0][2] – bank[2][3]
  • bank[0][5] – bank[2][1]
  • bank[0][5] – bank[2][3]
  • bank[2][1] – bank[3][2]
  • bank[2][3] – bank[3][2]
    注意,第 0 行和第 3 行上的設備之間不存在激光束。
    這是因為第 2 行存在安全設備,這不滿足第 2 個條件。
    示例 2:
    在這里插入圖片描述

輸入:bank = [“000”,“111”,“000”]
輸出:0
解釋:不存在兩個位于不同行的設備

提示:

m == bank.length
n == bank[i].length
1 <= m, n <= 500
bank[i][j] 為 ‘0’ 或 ‘1’

直接模擬即可:

class Solution {
public:int numberOfBeams(vector<string>& bank) {int ans = 0;int last = 0;for (string &row : bank){int deviceNum = count(row.begin(), row.end(), '1');if (deviceNum == 0){continue;}ans += deviceNum * last;last = deviceNum;}return ans;}
};

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/719229.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/719229.shtml
英文地址,請注明出處:http://en.pswp.cn/news/719229.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

NERF論文筆記

NeRF:Representing Scene as Neural Radiance Fields for View Synthesis 筆記 摘要 實現了一個任意視角視圖生成算法&#xff1a;輸入稀疏的場景圖像&#xff0c;通過優化連續的Volumetric場景函數實現&#xff1b;用全連接深度網絡表達場景&#xff0c;輸入是一個連續的5維…

Unity(第二十部)效果 粒子、線條和拖尾

1、粒子系統 粒子系統介紹 Unity 粒子系統是 Unity 引擎中用于創建和控制粒子效果的工具。它可以模擬各種自然現象&#xff0c;如火焰、煙霧、雨滴等&#xff0c;也可以用于創建特效&#xff0c;如魔法光芒、爆炸效果等。 粒子系統組成 在 Unity 中&#xff0c;粒子系統由發射…

用 Dockerfile為鏡像添加SSH服務

1、基礎鏡像ubuntu:18.04 2、替換為國內的安裝源 3、安裝openssh-server 4、允許root用戶遠程登陸 5、暴露端口22 6、服務開機自啟動 1.創建目錄 [rootopenEuler-node1 db]# mkdir sshd_ubuntu 2.創建 Dockerfile、 run.sh 、authorized_keys、vim aliyun.list 文件 [rootop…

網盤拉新如何對接?盤點最靠譜的一手渠道平臺

2024網盤行業再次重燃戰火。字節旗下產品頭條搜索極速版APP、悟空瀏覽器APP推出對應的網盤功能&#xff0c;剛剛開放了拉新推廣&#xff0c;現在是一個不能錯過新項目的好時機。 如果你對網盤拉新推廣充滿熱情&#xff0c;千萬不要錯過星子助推聯合字節推出的網盤項目機會。小…

python自動化之如何利用allure生成測試報告

Allure測試報告框架幫助你輕松實現”高大上”報告展示。本文通過示例演示如何從0到1集成Allure測試框架。重點展示了如何將Allure集成到已有的自動化測試工程中、以及如何實現報表的優化展示。Allure非常強大&#xff0c;支持多種語言多種測試框架&#xff0c;無論是Java/Pytho…

成功的交易沒有對錯,只有邏輯

大部分人將交易失敗歸咎于心態&#xff0c;但其實我們是否認真思考過自己的基本功是否扎實呢&#xff1f;這篇文章將引導你換個角度看待交易&#xff0c;讓你明白自己應該努力的方向。 曾經&#xff0c;你或許認為資金體量小、信息不對稱、技術不過關、心態不過硬是阻礙交易發展…

TikTok外貿系統的核心功能及其源代碼分享!

隨著全球化的不斷推進&#xff0c;外貿業務成為越來越多企業的增長動力&#xff0c;TikTok作為一個全球性的社交媒體平臺&#xff0c;其用戶基數龐大、活躍度高&#xff0c;為外貿業務提供了無限的商機。 為了幫助企業在TikTok上更好地開展外貿業務&#xff0c;TikTok外貿系統…

【DDD】學習筆記-聚合和聚合根:怎樣設計聚合?

今天我們來學習聚合&#xff08;Aggregate&#xff09;和聚合根&#xff08;AggregateRoot&#xff09;。 我們先回顧下上一講&#xff0c;在事件風暴中&#xff0c;我們會根據一些業務操作和行為找出實體&#xff08;Entity&#xff09;或值對象&#xff08;ValueObject&…

47、WEB攻防——通用漏洞Java反序列化EXP生成數據提取組件安全

文章目錄 序列化和反序列化的概念&#xff1a; 序列化&#xff1a;把java對象轉換成字節流的過程&#xff1b;反序列化&#xff1a;把字節流恢復為java對象的過程。 對象的序列化主要有兩種用途&#xff1a; 把對象的字節流永久的保存在硬盤上&#xff0c;通常存放在一個文件…

網絡分析工具簡介及匯總

文章目錄 一、網絡分析工具軟件是什么二、網絡分析工具軟件作用三、常見的網絡分析工具 一、網絡分析工具軟件是什么 網絡分析工具軟件是一種用于捕獲、分析和解釋網絡數據包的工具。它們可以直接從網絡接口上捕獲數據包&#xff0c;并提供詳細的信息和統計數據&#xff0c;以幫…

xss.haozi.me:0x0B

<svg><script>(1)</script>

洛谷 B3620 x 進制轉 10 進制

題目描述 給一個小整數 x 和一個 x 進制的數 S。將 S 轉為 10 進制數。對于超過十進制的數碼&#xff0c;用 A&#xff0c;B&#xff0c;…… 表示。 輸入格式 第一行一個整數 x; 第二行一個字符串 S。 輸出格式 輸出僅包含一個整數&#xff0c;表示答案。 輸入輸出樣例…

【JavaScript】面試手撕淺拷貝

【JavaScript】面試手撕淺拷貝 引入 淺拷貝和深拷貝應該是面試時非常常見的問題了&#xff0c;為了能將這兩者說清楚&#xff0c;于是打算用兩篇文章分別解釋下深淺拷貝。 PS: 我第一次聽到拷貝這個詞&#xff0c;有種莫名的熟悉感&#xff0c;感覺跟某個英文很相似&#xff…

Linux文本處理三劍客:awk(內置函數詳解筆記)

Linux系統中&#xff0c;AWK 是一個非常強大的文本處理工具&#xff0c;它的內置函數使得對文本數據進行處理更加高效和便捷。 本文將介紹 AWK 內置函數的幾種主要類型&#xff1a; 算數函數字符串函數時間函數位操作函數其他常用函數 我們將使用一個示例文本文件來演示這些函…

局域網如何搭建服務器?

隨著網絡的普及和應用場景的不斷拓展&#xff0c;局域網搭建服務器逐漸成為大家關注的話題。在日常生活和工作中&#xff0c;我們經常需要通過局域網和互聯網進行文件共享、資源訪問等操作&#xff0c;而搭建服務器則是實現這些功能的重要手段之一。本文將針對局域網搭建服務器…

SwiftUI 如何在運行時從底層動態獲取任何 NSObject 對象實例

概覽 眾所周知,SwiftUI 的推出極大地方便了我們這些禿頭碼農們搭建 App 界面。不過,有時我們仍然需要和底層的 UIKit 對象打交道。比如:用 SwiftUI 未暴露出對象的接口改變視圖的行為或外觀。 從上圖可以看到,我們 SwiftUI 代碼并沒有設置視圖的背景色,那么它是怎么變成綠…

vscode 本地/遠程添加python解釋器

文章目錄 1. 背景2. 增加python解釋器 1. 背景 我們在使用 vscode 去遠程調試代碼時&#xff0c;如果環境存在多個 Python 版本&#xff08;如用 conda 管理&#xff09;&#xff0c;沒有選擇正確的 Python 解釋器會導致少包、庫不適配等各種問題 2. 增加python解釋器 windo…

鴻蒙系統適配的流程

鴻蒙系統適配的流程通常涉及以下關鍵步驟&#xff0c;以下是鴻蒙系統適配的一般流程&#xff0c;具體流程可能會根據項目的具體需求和開發團隊的情況進行調整和優化。北京木奇移動技術有限公司&#xff0c;專業的軟件外包開發公司&#xff0c;歡迎交流合作。 1. 準備工作&#…

超越脆弱:用否定法策略優化考研復試準備

很多情況下,你的想象力會為當前的世界添加一些東西。很抱歉,我會在本章中告訴你,這種方法完全是落后的方法:根據脆弱性和反脆弱性的概念,嚴格來說,正確的想象就是從未來中排除或削減不屬于未來的東西,采用否定法,脆弱的事物終將破碎。——《反脆弱:從不確定性中獲益》…

盤點:國家智能算力中心

文章目錄 1. Main2. My thoughtsReference 1. Main 按照《中國算力白皮書&#xff08;2022年&#xff09;》的定義&#xff0c;算力主要分為四部分&#xff1a;通用算力、智能算力、超算算力、邊緣算力。通用算力以CPU芯片輸出的計算能力為主&#xff1b;智能算力以GPU、FPGA、…