LeetCode 2348.全0子數組的數目

給你一個整數數組 nums ,返回全部為 0 的 子數組 數目。

子數組 是一個數組中一段連續非空元素組成的序列。

示例 1:

輸入:nums = [1,3,0,0,2,0,0,4]
輸出:6
解釋:
子數組 [0] 出現了 4 次。
子數組 [0,0] 出現了 2 次。
不存在長度大于 2 的全 0 子數組,所以我們返回 6 。
示例 2:

輸入:nums = [0,0,0,2,0,0]
輸出:9
解釋:
子數組 [0] 出現了 5 次。
子數組 [0,0] 出現了 3 次。
子數組 [0,0,0] 出現了 1 次。
不存在長度大于 3 的全 0 子數組,所以我們返回 9 。
示例 3:

輸入:nums = [2,10,2019]
輸出:0
解釋:沒有全 0 子數組,所以我們返回 0 。

提示:

1 <= nums.length <= 105^55
-109^99 <= nums[i] <= 109^99

分組循環,找出全0的一組,并計算子數組數量:

class Solution {
public:long long zeroFilledSubarray(vector<int>& nums) {int n = nums.size();long long ans = 0;int i = 0;while (i < n) {if (nums[i] != 0) {++i;continue;}int start = i;while (i < n && nums[i] == 0) {++i;}int len = i - start;ans += (long long)len * (len + 1) / 2;}return ans;}
};

如果nums的長度為n,則此算法時間復雜度為O(n),空間復雜度為O(1)。

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

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

相關文章

【wpf】從 DataContext 到依賴屬性:WPF 自定義控件 ImageView 的優化之路

從 DataContext 到依賴屬性&#xff1a;WPF 自定義控件 ImageView 的優化之路 最近我在做一個 WPF 項目&#xff0c;需要封裝一個 ImageView 控件&#xff0c;用來顯示圖像并處理鼠標交互。 在實際開發中&#xff0c;我遇到了一系列和 數據綁定 有關的問題&#xff1a; 控件需要…

人力資源管理的思維方式學習筆記2

戰略人力資源管理的思維方式——北京師范大學政府管理學院——王建民 教授3.1.理念&#xff1a;人力資源是第一戰略資源 我們先來了解海爾集團公司實施發展戰略的情況。海爾集團創立于1984年&#xff0c;根據官方網站的介紹&#xff0c;目前是一家全球領先的美好生活解決方案服…

汽車網絡安全 CyberSecurity ISO/SAE 21434 測試之一

一、什么是網絡安全&#xff1f; 在智能網聯和自動駕駛技術進入汽車行業之前&#xff0c;功能安全 一直是汽車開發的核心。 簡單來說&#xff0c;功能安全的目標是確保車輛的系統在出現故障時&#xff0c;不會對人、環境或者設備造成危害。比如&#xff0c;剎車失靈了&#xff…

力扣(LeetCode) ——217. 存在重復元素(C++)

題目&#xff1a;217. 存在重復元素 示例1&#xff1a; 輸入&#xff1a; nums [1,2,3,1] 輸出&#xff1a; true 解釋&#xff1a; 元素 1 在下標 0 和 3 出現。 示例2&#xff1a; 輸入&#xff1a; nums [1,2,3,4] 輸出&#xff1a; false 解釋&#xff1a; 所有元素都…

Redis 高可用與集群原理

Redis 高可用與集群原理1. 前言 Redis 單機雖然高性能&#xff0c;但一旦節點宕機&#xff0c;數據丟失或服務不可用問題會非常嚴重。為了解決這一問題&#xff0c;Redis 提供了 主從復制、哨兵&#xff08;Sentinel&#xff09;、Cluster 集群 等高可用機制。 這一篇文章我們重…

Oracle OCP認證考試題目詳解082系列第31題

考察知識點:SET VERIFY ON命令 英文題目 Which two statements are true about the SET VERIFY ON command? A.It displays values for variables prefixed with && B.It displays values for variables created by the DEFINE command C.It can be used in SQL Dev…

【WebSocket?】入門之旅(五):WebSocket 的安全性

本篇文章將講解 WebSocket 的安全性&#xff0c;特別是如何防止常見的 WebSocket 安全漏洞&#xff0c;如中間人攻擊&#xff08;MITM&#xff09;、XSS、CSRF 等。我們將介紹如何使用 wss:// 協議保障數據傳輸的安全&#xff0c;并給出一些安全最佳實踐&#xff0c;幫助你在使…

流程圖用什么工具做?免費/付費工具對比,附在線制作與下載教程

在日常工作和學習中&#xff0c;流程圖是一種高效的可視化工具——項目開發時梳理需求邏輯、業務推進中拆解步驟節點、學術研究里呈現論證框架&#xff0c;甚至是生活中規劃旅行路線&#xff0c;都能借助流程圖讓復雜信息變得清晰易懂。但面對市面上五花八門的流程圖工具&#…

Oracle重做日志(Redo Log):數據一致性的“守護者“

在Oracle數據庫的三大核心文件中&#xff0c;數據文件承載著最終的業務數據&#xff0c;控制文件記錄著數據庫的"身份檔案"&#xff0c;而重做日志&#xff08;Redo Log&#xff09;則扮演著"事務日記"的關鍵角色——它以不可篡改的方式記錄每一次數據變更…

C++學習:map/set源碼剖析+利用紅黑樹封裝map/set

前面我們已經學習了紅黑樹這個高級數據結構的實現。我們知道STL的map/set的底層數據結構為紅黑樹&#xff0c;本期就查看STL源碼的map/set&#xff0c;并結合著這之前的紅黑樹的實現&#xff0c;模擬實現map和set的一部分功能 STL源碼&#xff1a;樓田莉子/CPP代碼學習 作者的個…

【c++進階系列】:map和set的模擬實現(附模擬實現的源碼)

&#x1f525; 本文專欄&#xff1a;c &#x1f338;作者主頁&#xff1a;努力努力再努力wz &#x1f4aa; 今日博客勵志語錄&#xff1a;每一次抉擇&#xff0c;都是將未來的自己輕輕推向某個方向 ★★★ 本文前置知識&#xff1a; 紅黑樹 原理 那么在上一期博客中&#xf…

JVM默認棧大小

JVM 里線程棧的大小不是一個固定值&#xff0c;而是由 操作系統平臺、JVM 實現版本、以及啟動參數 共同決定的。 常見情況&#xff08;以 HotSpot 為例&#xff09;&#xff1a; Linux / macOS 64 位 JVM 默認大約是 1M &#xff08;1024 KB&#xff09;32 位 JVM 默認大約是 3…

AI 機器視覺檢測方案:破解食物包裝四大質檢難題,筑牢食品安全防線

在食品生產領域&#xff0c;包裝盒或包裝袋作為食品的直接包裝載體&#xff0c;其質量優劣直接關系到食品安全與企業聲譽。傳統人工質檢在應對食物包裝生產的高速節奏與復雜質量問題時&#xff0c;逐漸暴露出諸多局限性&#xff0c;成為企業發展的瓶頸。而 AI 視頻檢測技術的出…

嵌入式 Linux 安全簡介-第二部分

大家好&#xff01;我是大聰明-PLUS&#xff01;這是有關嵌入式Linux安全性的文章的第二部分。在第一部分中&#xff0c;我們討論了一些安全概念、威脅建模、安全啟動、代碼和數據加密、加密密鑰和密鑰存儲技術。在第二部分中&#xff0c;讓我們繼續討論提高嵌入式 Linux 設備安…

Vue3+JS 復雜表單實戰:從驗證到性能優化的全流程方案

繼上一篇分享組合式 API Hook 封裝后&#xff0c;這次想聚焦前端開發中 “讓人又愛又恨” 的場景 —— 復雜表單。不管是管理后臺的配置表單&#xff0c;還是用戶中心的多步驟提交&#xff0c;表單處理都占了業務開發的 40% 以上。這篇文章會從實際項目痛點出發&#xff0c;分享…

[特殊字符] Python在CentOS系統執行深度指南

文章目錄1 Python環境安裝與配置問題1.1 系統自帶Python的限制1.2 安裝Python 3的常見問題及解決方案1.3 SSL模塊問題解決方案1.4 環境變量配置與管理1.5 軟件集合&#xff08;SCL&#xff09;替代方案2 包管理與虛擬環境問題2.1 pip包管理器問題與解決方案2.2 虛擬環境的最佳實…

ptx 簡介03,ldmatrix 的應用實例解析

1. 實例編譯 運行 main.cu //nvcc -g -lineinfo -stdc17 -archnative main.cu -o main#include <iostream> #include <thrust/device_vector.h>/* ldmatrix.sync.aligned.shape.num{.trans}{.ss}.type r, [p];.shape {.m8n8}; .num {.x1, .…

PostgreSQL 的核心優勢數據庫優化與面試問題解析

Part0: PostgreSQL 的核心優勢PostgreSQL 的核心優勢可以總結為&#xff1a;它不僅僅是一個關系型數據庫&#xff0c;更是一個功能極其強大、設計高度嚴謹、且具有無限擴展潛力的數據平臺。其核心優勢主要體現在以下幾個方面&#xff1a;1. 高度符合 SQL 標準與可靠性&#xff…

牛客周賽 Round 109 (小紅的直角三角形

小紅的直角三角形思路&#xff1a;當作向量來求&#xff0c;向量乘為0&#xff1b;#include<bits/stdc.h> #define ll long long #define endl "\n" using namespace std; typedef pair<ll, ll> pll; int n; vector<pll> u; void solve() {int x,…

efcore 對象內容相同 提交MSSQL后數據庫沒有更新

一、efcore 對象內容相同 提交MSSQL后數據庫沒有更新在.net6EFcore6環境&#xff0c;遇到一個問題&#xff0c;當界面UI傳給EF的對象值沒有變化&#xff0c;它居然不去更新數據庫。那我有2個EFcore實例都在更新數據庫&#xff0c;值一直不變&#xff0c;程序就更新不到數據庫中…