https://www.acmicpc.net/problem/19621
내 풀이😊
n = int(input())
# 회의 정보를 담을 리스트
array = []
for _ in range(n):
# 시작 시간, 끝나는 시간, 회의 인원 입력
array.append(list(map(int, input().split())))
# 시작 시간 기준 오름차순 정렬
array.sort()
dp = [0] * n
dp[0] = array[0][2]
for i in range(1, n):
dp[i] = max(dp[i - 1], dp[i - 2] + array[i][2])
print(dp[n - 1])
시간복잡도는 O(NlogN)입니다.
백준 문제 풀이 깃허브 주소입니다 :)
https://github.com/Yiseull/baekjoon
'알고리즘' 카테고리의 다른 글
[백준] 19623번: 회의실 배정4 | 파이썬 (0) | 2022.04.12 |
---|---|
[백준] 19622번: 회의실 배정3 | 파이썬 (0) | 2022.04.12 |
[백준] 14601번: 샤워실 바닥 깔기 | 파이썬 (0) | 2022.04.06 |
[백준] 1946번 신입 사원 | 파이썬 (0) | 2022.03.26 |
[백준] 1931번: 회의실 배정 | 파이썬 (0) | 2022.03.23 |