File tree Expand file tree Collapse file tree 1 file changed +37
-0
lines changed
longest-common-subsequence Expand file tree Collapse file tree 1 file changed +37
-0
lines changed Original file line number Diff line number Diff line change
1
+ """
2
+ # Time Complexity: O(N)
3
+ - lce_dict ์์ฑ: N
4
+ - N๊ฐ์ key์ ๋ํ์ฌ ์ํํ๋ฉด์ ๊ฐ ํ์ธ: N
5
+ # Space Compelexity: O(k)
6
+ - ์ค๋ณต๋์ง ์์ key k๊ฐ ์ ์ฅ
7
+ """
8
+ class Solution :
9
+ def longestConsecutive (self , nums : List [int ]) -> int :
10
+ if not nums :
11
+ return 0
12
+
13
+ lce_dict = {}
14
+ for num in nums :
15
+ lce_dict [num ] = True
16
+
17
+ answer = 0
18
+ for num in nums :
19
+ cur_lce = 1
20
+ if lce_dict .pop (num , None ) is None :
21
+ continue
22
+
23
+ down_num = num - 1
24
+ while down_num in lce_dict :
25
+ cur_lce += 1
26
+ lce_dict .pop (down_num )
27
+ down_num -= 1
28
+
29
+ up_num = num + 1
30
+ while up_num in lce_dict :
31
+ cur_lce += 1
32
+ lce_dict .pop (up_num )
33
+ up_num += 1
34
+
35
+ answer = answer if answer > cur_lce else cur_lce
36
+
37
+ return answer
You canโt perform that action at this time.
0 commit comments