포럼
문제 USACO0396

욕심쟁이 파이 먹기

설명

농부 존에게는 편의상 \(1 \ldots M\)로 번호가 붙은 \(M\)마리의 소가 있는데, 이 소들은 가끔 풀 뜯기에서 벗어난 기분 전환을 즐긴다. 소들을 위한 간식으로 농부 존은 \(1 \ldots N\)로 번호가 붙은 \(N\)개의 파이(\(1 \leq N \leq 300\))를 구웠다. 소 \(i\)는 번호가 \([l_i, r_i]\) 범위(\(l_i\)부터 \(r_i\)까지, 양 끝 포함)에 있는 파이를 좋아하며, 정확히 같은 파이 범위를 좋아하는 두 소는 없다. 소 \(i\)는 또한 \(1 \ldots 10^6\) 범위의 정수인 무게 \(w_i\)를 가진다.

농부 존은 소들의 수열 \(c_1,c_2,\ldots, c_K\)를 선택할 수 있고, 선택된 소들은 그 순서대로 차례로 먹는다. 안타깝게도 소들은 나눠 먹을 줄 모른다! 소 \(c_i\)가 먹을 차례가 되면, 그 소는 자기가 좋아하는 파이를 전부, 즉 구간 \([l_{c_i},r_{c_i}]\)에 남아 있는 모든 파이를 먹어 치운다. 농부 존은 어떤 소가 먹을 차례가 되었는데 그 소가 좋아하는 파이가 이미 전부 먹혀 버린 곤란한 상황을 피하고 싶다. 따라서 수열의 각 소가 파이를 적어도 하나 먹는 수열 \(c_1,c_2,\ldots, c_K\) 중에서 가능한 최대의 총 무게(\(w_{c_1}+w_{c_2}+\ldots+w_{c_K}\))를 계산해 주기를 바란다.

문제 제공: Benjamin Qi

제약

점수 배점

  • 테스트 케이스 2-5는 \(N\le 50\)\(M\le 20\)을 만족한다.
  • 테스트 케이스 6-9는 \(N\le 50\)을 만족한다.

문제 제공: Benjamin Qi

입력 형식

첫째 줄에 두 정수 \(N\)\(M\) \(\left(1\le M\le \frac{N(N+1)}{2}\right)\)이 주어진다.

다음 \(M\)개의 줄에는 각각 정수 \(w_i, l_i, r_i\)로 소 한 마리가 설명된다.

출력 형식

유효한 수열의 가능한 최대 총 무게를 출력한다.

Standard input / output
This problem is judged over standard input/output. The original contest used named files — if you prefer the classic interface, tick “File I/O” on the submit form and read/write these files instead:
입력을 읽을 파일 pieaters.in · 출력을 쓸 파일 pieaters.out
예제 1
입력
2 2
100 1 2
100 1 1
출력
200
설명

In this example, if cow 1 eats first, then there will be nothing left for cow 2 to eat. However,
if cow 2 eats first, then cow 1 will be satisfied by eating the second pie only.

문제 정보

riseoj 작성

출처 올림피아드 > USACO > 2019-2020 > December > Platinum

태그

평가 및 의견

Greedy Pie Eaters

개요
출제자 난이도 Unrated 레이팅 미적용 의견 0 / 1 공개 집계 (커뮤니티 난이도, 주요 주제, 품질)는 의견이 충분히 모이면 공개됩니다.

Log in to rate problems.

개별 의견

아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.

풀이 제출

Greedy Pie Eaters

게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다. 로그인하고 제출하기
공개
파일 입출력 (pieaters.in / pieaters.out — classic USACO interface; off = stdin/stdout)
C++20 Tab 들여쓰기 · Ctrl+/ 주석 토글 · Enter 자동 들여쓰기
1 1 1 0 공백: 4 · UTF-8