https://www.acmicpc.net/problem/19621

 

19621번: 회의실 배정 2

서준이는 아빠로부터 N개의 회의와 하나의 회의실을 선물로 받았다. 각 회의는 시작 시간, 끝나는 시간, 회의 인원이 주어지고 한 회의실에서 동시에 두 개 이상의 회의가 진행될 수 없다. 단,

www.acmicpc.net

 

내 풀이😊

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

 

GitHub - Yiseull/baekjoon

Contribute to Yiseull/baekjoon development by creating an account on GitHub.

github.com

 

+ Recent posts