주전자 N개의 용량과 사람 수 K가 주어질 때, 모든 주전자에 대해 floor(용량 / X)의 합이 K 이상이 되는 가장 큰 정수 X를 구한다.
보통5이분 탐색배열그리디수학면접 대비아직 제출이 없습니다시간 제한1초메모리 제한512 MB프로그래밍 대회 전날, 은상과 친구들은 이상한 술집에 모였다. 이 술집에서 막걸리를 시키면 주전자의 크기는 늘 같지만 안에 든 막걸리의 양은 매번 다르다. 한 번 주문하면 802ml가 나오기도 하고 1002ml가 나오기도 한다.
은상은 막걸리를 N 주전자 주문하고, 자신을 포함한 K명에게 막걸리를 똑같은 양씩 나눠 주려고 한다. 그런데 은상과 친구들은 서로 다른 주전자의 막걸리가 섞이는 것을 싫어한다. 그래서 나눠 주고 난 뒤 주전자에 막걸리가 조금 남으면 그냥 버린다. 즉, 여러 주전자에 남은 막걸리를 모아서 다시 나눠 주는 일은 없다.
예를 들어 5명이 3 주전자를 주문해서 각 주전자에 1002ml, 802ml, 705ml가 담겨 나왔다고 하자. 이것을 한 사람에게 401ml씩 나눠 주면 각 주전자에서 200ml, 0ml, 304ml는 버린다.
K명 모두에게 똑같이 나눠 줄 수 있는 한 사람당 막걸리 양(ml)의 최댓값을 구하라. 한 사람당 양은 정수 ml이다.
첫째 줄에 은상이 주문한 막걸리 주전자의 개수 N과 은상을 포함한 사람 수 K가 주어진다.
둘째 줄부터 N개의 줄에 걸쳐 각 주전자에 든 막걸리의 양(ml)이 한 줄에 하나씩 주어진다.
첫째 줄에 K명에게 똑같이 나눠 줄 수 있는 한 사람당 막걸리 양(ml)의 최댓값을 출력한다. 한 사람당 1ml씩도 K명에게 나눠 줄 수 없다면 0을 출력한다.
두 번째 예제에서 한 사람당 205ml로 나누면 각 주전자에서 2, 2, 3, 4명분이 나와 모두 11명분이 된다. 하지만 206ml로 나누면 2, 2, 3, 3명분으로 10명분밖에 되지 않으므로 양을 조금 줄여야 한다.