8000 Create December-14.py · Hunterdii/Leetcode-POTD@615d843 · GitHub
[go: up one dir, main page]

Skip to content

Commit 615d843

Browse files
authored
Create December-14.py
1 parent 950e83c commit 615d843

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
from collections import deque
2+
from typing import List
3+
4+
class Solution:
5+
def continuousSubarrays(self, nums: List[int]) -> int:
6+
start = 0
7+
total_subarrays = 0
8+
max_deque, min_deque = deque(), deque()
9+
for end, num in enumerate(nums):
10+
while max_deque and nums[max_deque[-1]] <= num:
11+
max_deque.pop()
12+
max_deque.append(end)
13+
while min_deque and nums[min_deque[-1]] >= num:
14+
min_deque.pop()
15+
min_deque.append(end)
16+
while nums[max_deque[0]] - nums[min_deque[0]] > 2:
17+
if max_deque[0] == start:
18+
max_deque.popleft()
19+
if min_deque[0] == start:
20+
min_deque.popleft()
21+
start += 1
22+
total_subarrays += end - start + 1
23+
24+
return total_subarrays

0 commit comments

Comments
 (0)
0