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