Skip to content

Commit 18dc520

Browse files
joshua-dierickse-altiWolf22
authored andcommitted
Time: 183 ms (32.25%) | Memory: 42.2 MB (100.00%) - LeetSync
Co-authored-by: Joshua Dierickse <joshua.dierickse@gmail.com>
1 parent 5951213 commit 18dc520

File tree

1 file changed

+6
-8
lines changed

1 file changed

+6
-8
lines changed

354-russian-doll-envelopes/russian-doll-envelopes.py

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@ class Solution:
44
def maxEnvelopes(self, envelopes: List[List[int]]) -> int:
55
envelopes.sort()
66

7-
dp = []
8-
7+
n = 0
98
i = 0
109

1110
while i < len(envelopes):
@@ -15,20 +14,19 @@ def maxEnvelopes(self, envelopes: List[List[int]]) -> int:
1514
updates = []
1615

1716
while i + j < len(envelopes) and prev_x == envelopes[i + j][0]:
18-
update_index = bisect_left(dp, envelopes[i + j][1])
17+
update_index = bisect_left(envelopes, envelopes[i + j][1], 0, n)
1918
if update_index != last_index:
2019
last_index = update_index
2120
updates.append((update_index, envelopes[i + j][1]))
2221

2322
j += 1
2423

2524
for [update_index, value] in updates:
26-
if update_index >= len(dp):
27-
dp.append(value)
28-
else:
29-
dp[update_index] = value
25+
if update_index >= n:
26+
n += 1
27+
envelopes[update_index] = value
3028

3129
i += j
3230

33-
return len(dp)
31+
return n
3432

0 commit comments

Comments
 (0)