File tree Expand file tree Collapse file tree 1 file changed +33
-0
lines changed Expand file tree Collapse file tree 1 file changed +33
-0
lines changed Original file line number Diff line number Diff line change
1
+ """
2
+ Time Complexity: O(n log n)
3
+ - μ λ ¬μ O(n log n)
4
+ - κ° λ―Έν
μ λν ν μ°μ°μ΄ O(log n)
5
+
6
+ Space Complexity: O(n)
7
+ - μ΅μ
μ κ²½μ° λͺ¨λ λ―Έν
μ΄ λμμ μ§νλμ΄ νμ nκ°μ μμκ° μ μ₯λ¨
8
+
9
+ νμ΄λ°©λ²:
10
+ 1. λ―Έν
μκ°(intervals)μ μμ μκ°μ κΈ°μ€μΌλ‘ μ λ ¬ν¨
11
+ 2. μ΅μ νμ μ΄μ©ν΄μ νμ¬ μ§ν μ€μΈ λ―Έν
μ μ’
λ£μκ°μ μ μ₯ν¨
12
+ 3. κ° λ―Έν
μ μννλ©΄μ:
13
+ - μ λ―Έν
μ μμμκ°μ΄ νμ μ΅μ μ’
λ£μκ°λ³΄λ€ ν¬κ±°λ κ°μΌλ©΄ -> κ°μ₯ μΌμ° λλλ λ―Έν
μ νμμ μ κ±°
14
+ - νμ¬ λ―Έν
μ μ’
λ£μκ°μ νμ μΆκ°
15
+ 4. νμ ν¬κΈ° = νμν μ΅μ νμμ€μ μ
16
+ """
17
+ import heapq
18
+
19
+ def min_meeting_rooms (intervals ):
20
+ if not intervals :
21
+ return 0
22
+
23
+ intervals .sort (key = lambda x : x [0 ])
24
+
25
+ rooms = []
26
+
27
+ heapq .heappush (rooms , intervals [0 ][1 ])
28
+
29
+ for i in range (1 , len (intervals )):
30
+ if intervals [i ][0 ] >= rooms [0 ]:
31
+ heapq .heappop (rooms )
32
+ heapq .heappush (rooms , intervals [i ][1 ])
33
+ return len (rooms )
You canβt perform that action at this time.
0 commit comments