#1536
Silver I

해저 탐사

시간 제한
1s
메모리 제한
512MB
제출
105
정답
19
맞힌 사람
15
정답 비율
16.0%

문제

해양 탐사 다이버 성민이는 마리아나 해구의 미개척 해저 구간을 조사하는 임무를 맡았다. 조사할 구간에는 11번부터 NN번까지 일렬로 이어진 탐사 지점이 있으며, ii번 지점의 해저 수심은 hih_i밀리미터이다.

성민이는 탐사를 시작하기 전에 목표 잠수 수심을 음이 아닌 정수 DD밀리미터로 정한다. 이후 11번 지점부터 NN번 지점까지 차례로 이동한다. 해저보다 깊이 내려갈 수는 없으므로, ii번 지점에서 실제로 잠수하는 수심은 di=min⁡(hi,D)d_i = \min(h_i, D)이다.

성민이가 안전하게 탐사를 마치려면 다음 두 조건을 모두 만족해야 한다.

  1. 공기 소모 한계: ii번 지점에서 did_i만큼의 공기를 소모한다. 모든 지점에서 소모한 공기량의 합은 공기통 용량 AA를 넘을 수 없다.
  2. 질소 부하 한계: ii번 지점에서 di2d_i^2만큼의 질소 부하가 누적된다. 모든 지점에서 누적된 질소 부하의 합은 안전 한계치 MM을 넘을 수 없다.

즉, ∑i=1Ndi≤A\sum_{i=1}^{N} d_i \le A와 ∑i=1Ndi2≤M\sum_{i=1}^{N} d_i^2 \le M을 모두 만족해야 한다.

성민이가 두 안전 조건을 지키며 탐사할 수 있는 목표 잠수 수심 DD의 최댓값을 구해 보자. 가능한 DD에 상한이 없다면 −1-1을 출력한다.

입력

첫째 줄에 탐사 지점의 수 NN, 공기통 용량 AA, 질소 부하 한계치 MM이 공백으로 구분되어 주어진다. (1≤N≤200,000;0≤A≤2×1012;0≤M≤1018)(1 \le N \le 200,000; 0 \le A \le 2 \times 10^{12}; 0 \le M \le 10^{18})

둘째 줄에 각 지점의 해저 깊이를 나타내는 NN개의 정수 h1,h2,…,hNh_1, h_2, \ldots, h_N이 공백으로 구분되어 주어진다. (0≤hi≤10,000,000)(0 \le h_i \le 10,000,000)

출력

공기 소모 한계와 질소 부하 한계를 모두 만족하는 목표 잠수 수심 DD의 최댓값을 출력한다.

가능한 DD에 상한이 없다면 −1-1을 출력한다.

예제 1

4 13 47
2 5 8 10

출력 1

3
문제를 만든 사람
안우진
알고리즘 분류
코드 제출

코드를 제출하려면 로그인이 필요합니다.

로그인
내 제출

제출 내역이 없습니다.

맞은 사람
#순위사용자언어시간메모리코드 길이
10587🥇
상받고싶습니다
C++9ms3032KB857B
10517🥈
실외기선풍기세탁기
C++9ms3032KB695B
10447🥉
Kokiri is cute
C++9ms3032KB610B
102934
황현석
Rust9ms5280KB633B
110115
jwpassion1
C++10ms3032KB755B
105086
cpp = competitive python programming
C++11ms3032KB755B
104697
스피드런도 런이다
C++15ms3264KB653B
104988
SW-IT Contest는 충남대학교 컴퓨터인공지능학부 알고리즘 동아리 ANA에서 주최하는 프로그래밍 대회로, 팀으로 출전하여 알고리즘 문제를 해결하는 대회입니다.
C++17ms3160KB1120B
105369
세얼간이
C++27ms2264KB727B
1064110
OOOOOOOO
C++39ms3032KB779B
1104911
이재준
C++42ms3032KB1179B
1066312
스위트콘치즈불닭볶음면
PyPy68ms76540KB357B
1073413
이채환여친구함
Python112ms40420KB660B
1073814
황준영
PyPy177ms89348KB1082B
1074715
25번지 실버타운
Python2794ms32148KB604B
난이도 투표
Silver I2명 투표· 10일 전
로그인 후 AC 받으면 투표할 수 있습니다.
전체 제출
#사용자문제결과언어시간메모리코드 길이제출 시간
11049
맞았습니다
C++42ms3032KB1179B2026. 10. 13. 06:32
11048
틀렸습니다
C++--1181B2026. 10. 13. 06:30
11047
틀렸습니다
C++--1180B2026. 10. 13. 06:27
11045
맞았습니다
Python347ms30884KB925B2026. 10. 13. 05:12
11044
틀렸습니다
Python--921B2026. 10. 13. 05:00
11011
맞았습니다
C++10ms3032KB755B2026. 10. 08. 03:59
10950
시간 초과
PyPy--659B2026. 10. 05. 07:49