leetcode 795. Number of Subarrays with Bounded Maximum | 795. 区间子数组个数(Java)
生活随笔
收集整理的這篇文章主要介紹了
leetcode 795. Number of Subarrays with Bounded Maximum | 795. 区间子数组个数(Java)
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
題目
https://leetcode.com/problems/number-of-subarrays-with-bounded-maximum/
題解
一看數(shù)據(jù)規(guī)模,這題只能 O(1)
乍一看,以為是單調(diào)棧。一畫圖,發(fā)現(xiàn)是一個(gè)排列組合問(wèn)題。思路如下:
首先,將大于 right 的數(shù)字圈出來(lái),看作是擋板,把整個(gè)數(shù)組分割成好幾個(gè)段。
每個(gè)段中,包含小于 left 的數(shù)字,這些數(shù)字是不能單獨(dú)成群的。
所以每個(gè)段中的所有可能組合數(shù)量 = 段內(nèi)所有可能組合數(shù)量 - 不能單獨(dú)成群的數(shù)字的組合數(shù)量。
計(jì)算組合數(shù)量的時(shí)候,用等差求和公式 1+2+3+...+n = (首項(xiàng)+末項(xiàng))*項(xiàng)數(shù)/2
總結(jié)
以上是生活随笔為你收集整理的leetcode 795. Number of Subarrays with Bounded Maximum | 795. 区间子数组个数(Java)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: leetcode 794. Valid
- 下一篇: leetcode 816. Ambigu