#300
Unrated
건물 짓기
원문: English
시간 제한
2s
메모리 제한
1024MB
제출
0
정답
0
맞힌 사람
0
정답 비율
0.0%

문제

현성이는 NN층짜리 새로운 동아리 건물을 짓기 위해 KK명의 부원과 함께 일하고 있다. (1NK10121 \le N \le K \le 10^{12}, N105N \le 10^5) 현성이는 건물을 최대한 빨리 짓기 위해 부원들을 각 층에 어떻게 배치할지 결정해야 한다.

각 부원은 NN개의 층 중 정확히 한 곳에 배정되어야 하며, 모든 층에는 적어도 한 명의 부원이 배정되어야 한다. ii번째 층을 짓는 데 필요한 총 작업량은 aia_i이며, 한 명의 부원은 한 시간에 11만큼의 작업을 수행한다. 따라서 ii번째 층에 cc명의 부원이 배정된다면, 해당 층을 완성하는 데 ai/ca_i / c시간이 걸린다. 안전을 위해 ii번째 층의 공사가 모두 끝나야만 i+1i+1번째 층의 공사를 시작할 수 있다.

부원들을 최적으로 배치했을 때 건물을 완성하는 데 걸리는 최소 시간을 구하는 프로그램을 작성하시오. 결과값은 소수점 첫째 자리에서 반올림하여 정수로 출력한다. 정답과 정수 사이의 차이가 0.10.1보다 크다는 것이 보장된다.

입력

첫째 줄에 NNKK가 공백으로 구분되어 주어진다. (1NK10121 \le N \le K \le 10^{12}; N105N \le 10^5)

다음 NN개의 줄에는 a1,,aNa_1, \dots, a_N이 한 줄에 하나씩 주어진다. (1ai10121 \le a_i \le 10^{12})

출력

건물을 완성하는 데 필요한 최소 시간을 반올림하여 정수로 출력한다.

예제 입력 1

2 5
10
4

예제 출력 1

5
코드 제출

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

로그인
내 제출
제출 내역이 없습니다.
맞은 사람
아직 맞은 사람이 없습니다.
난이도 투표
Unrated0명 투표
로그인 후 AC 받으면 투표할 수 있습니다.
전체 제출
제출 내역이 없습니다.