-문제: https://www.acmicpc.net/problem/8980
어려운 문제. 아직 풀이 이해가 안가서 나중에 다시 봐야할 것 같다
-정답풀이:
n,c=map(int,input().split())
m=int(input())
nums=[]
temps=[c]*n
for _ in range(m):
nums.append(list(map(int,input().split())))
nums=sorted(nums,key=lambda x: x[1]) #도착하는 순서대로 정렬
ans=0
for i in range(len(nums)):
minNum=c+1
for j in range(nums[i][0],nums[i][1]):
if temps[j]<minNum :
minNum=temps[j]
t=min(minNum,nums[i][2])
ans+=t
for j in range(nums[i][0],nums[i][1]):
temps[j]-=t
print(ans)
'백준 > Greedy' 카테고리의 다른 글
[백준] 10775번: 공항(다시) (0) | 2022.02.11 |
---|---|
[백준] 2810번: 컵홀더 (0) | 2022.02.11 |
[백준] 11501번: 주식 (0) | 2022.02.10 |
[백준] 2828번: 사과담기 게임 (0) | 2022.02.10 |
[백준] 2012번: 등수 매기기 (0) | 2022.02.09 |