RiseOJ는 solved.ac와 제휴 관계가 없습니다. 티어 아이콘 © solved.ac. solved.ac
포럼
R01415

탐사 드론 충전

Gold I 골드 I
난이도
2s
시간 제한
256MB
메모리 제한
0
맞았습니다!!
0
제출 수
0.0%
정답률
레이팅

의견: 0

설명

탐사 팀은 길이 \(L\) km인 직선 구간 \([0, L]\) 위에 \(N\)개의 충전소를 설치했다. 양 끝점 \(0\)\(L\)도 충전소 역할을 한다.

\(K\)대의 드론이 이 구간을 분담하여 탐사한다. 각 드론은 충전소 목록을 정렬했을 때 연속된 일부 충전소를 담당하며, 그 구간의 첫 번째 충전소에서 마지막 충전소까지를 비행한다. 드론이 필요한 비행 거리 (= 마지막 충전소 위치 \(-\) 첫 번째 충전소 위치)의 최댓값을 최소화하여라.

즉, \(0\), \(L\)을 포함한 모든 충전소 위치를 정렬한 뒤 \(K\)개의 연속 그룹으로 분할할 때, 각 그룹의 (마지막 위치 \(-\) 첫 번째 위치)의 최댓값을 최소화한 값을 구하여라.

제약
  • \(1 \le L \le 10^9\)
  • \(0 \le N \le 200\,000\)
  • \(1 \le K \le N + 2\)
  • \(1 \le P_i \le L - 1\) (충전소는 구간의 내부에만 존재한다)
  • 모든 \(P_i\)는 서로 다르다.
입력 형식

첫째 줄에 구간의 길이 \(L\), 충전소 수 \(N\), 드론 수 \(K\)가 공백으로 구분되어 주어진다.

둘째 줄에 충전소의 위치 \(P_1, P_2, \dots, P_N\)이 공백으로 구분되어 주어진다. \(N = 0\)이면 빈 줄이 주어진다.

출력 형식

드론 비행 거리 최댓값의 최솟값을 출력한다.

예제 1
입력
10 2 2
3 7
출력
3
설명

정렬된 위치: \(0, 3, 7, 10\). \(K=2\)대로 분할할 때 최적: \([0,3]\)\([7,10]\)으로 나누면 각 구간 길이가 \(3, 3\)이므로 최댓값 \(3\). 길이 \(3\)보다 작게는 불가능하므로 답은 \(3\).

예제 2
입력
12 3 3
4 6 9
출력
3
설명

정렬된 위치: \(0, 4, 6, 9, 12\). 3개 드론으로 최적 분할: \([0], [4,6], [9,12]\)이면 길이 \(0, 2, 3\), 최댓값 \(3\). 답은 \(3\).

문제 정보

riseoj 작성

출처 Original

평가 및 의견

탐사 드론 충전

개요
출제자 난이도 Gold I 골드 I 의견 0 / 50 공개 집계 (커뮤니티 난이도, 주요 주제, 품질)는 의견이 충분히 모이면 공개됩니다.

Log in to rate problems.

개별 의견

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

풀이 제출

탐사 드론 충전

게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다. 로그인하고 제출하기
공개
C++20 Tab 들여쓰기 · Ctrl+/ 주석 토글 · Enter 자동 들여쓰기
1 1 1 0 공백: 4 · UTF-8