Universal Cup Judging System

Universal Cup

Límite de tiempo: 2 s Límite de memoria: 512 MB Puntuación total: 100 Hackeable ✓
Estadísticas

파이프라인에서 $n$개의 작업을 스케줄링해야 한다. 작업들은 수열을 이루며, 작업 $i$의 작업량은 $a_i$이다. 파이프라인은 직렬로 연결된 $m$개의 단계로 이루어진다.

처리를 시작하기 전에 정수 $t$ ($0 \le t \le n$)를 선택할 수 있다. 이렇게 하면 처음 $t$개의 작업을 상대적인 순서를 바꾸지 않고 맨 뒤로 옮겨 $a_{t+1}, a_{t+2}, \ldots, a_n, a_1, a_2, \ldots, a_t$를 얻는다. $t=0$ 또는 $t=n$을 선택하면 수열은 바뀌지 않는다.

그다음, 이렇게 얻은 수열을 최대 $k$개의 비어 있지 않은 연속 구간으로 나누어야 하며, 각 구간은 하나의 배치를 이룬다. 배치의 작업량은 그 배치에 속한 작업들의 작업량의 합이다.

배치들은 순서대로 파이프라인에 들어간다. 각 배치는 $1, 2, \ldots, m$ 단계를 이 순서대로 거치며, 각 단계에서 자신의 작업량과 같은 시간이 걸린다. 각 단계는 한 번에 최대 하나의 배치를 처리하며, 수열에서 배치들이 왼쪽에서 오른쪽으로 나타나는 순서를 따른다. 한 단계에서 처리가 끝난 뒤, 배치는 다음 단계가 사용 가능해질 때까지 기다릴 수 있다. 기다리는 동안에는 더 이상 이전 단계를 점유하지 않으므로, 이전 단계는 다음 배치를 처리할 수 있다. 서로 다른 단계는 서로 다른 배치를 동시에 처리할 수 있다.

파이프라인은 시각 $0$에 처리를 시작한다. 모든 작업이 가능한 한 일찍 끝나도록 옮길 접두 구간과 배치로 나누는 방법을 선택하라.

입력

첫 번째 줄에는 세 정수 $n, m, k$ ($1 \le n, m \le 5 \times 10^5$, $1 \le k \le n$)가 주어진다. 이는 각각 작업의 수, 단계의 수, 배치 수의 최댓값이다.

두 번째 줄에는 작업들의 작업량을 나타내는 $n$개의 정수 $a_1, a_2, \ldots, a_n$ ($1 \le a_i \le 10^6$)이 주어진다.

출력

모든 작업이 끝나는 시각의 가능한 최솟값을 정수 하나로 출력하라.

예제

입력 1

4 3 2
3 1 4 2

출력 1

20

참고

최적의 선택 중 하나는 접두 구간 $[3, 1, 4]$를 맨 뒤로 옮겨 수열 $[2, 3, 1, 4]$를 얻은 뒤, 이를 두 배치 $[2, 3]$과 $[1, 4]$로 나누는 것이다. 두 배치의 작업량은 모두 $5$이다. 이들은 첫 번째 단계에서 각각 시각 $0$과 $5$에 시작하여, 세 번째 단계에서 각각 시각 $15$와 $20$에 끝날 수 있다. 따라서 모든 작업은 시각 $20$에 끝나며, 이는 가능한 최소 시각이다.

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.