동일 길이 분배 최대화


문제 정보
check포인트 : 1 (부분 점수)
schedule시간 제한 : 1.0s
storage메모리 제한 : 256M
edit_square출제자:
 
답안 제출

길이가 제각각인 막대 N개가 있다. 이 막대들을 잘라 M명에게 막대 조각을 하나씩 나눠 주려고 한다.

나눠 주는 조각의 길이는 모두 같아야 하며, 조각은 가능한 한 길수록 좋다.

막대 하나는 원하는 만큼 여러 조각으로 자를 수 있지만, 서로 다른 막대나 조각을 이어 붙일 수는 없다. 또한 조각의 길이는 양의 정수여야 한다.

M명 모두에게 같은 길이의 조각을 하나씩 줄 수 있을 때, 그 조각 길이의 최댓값을 구하라.

입력

첫째 줄에 사람의 수 M(1 ≤ M ≤ 1,000,000)과 막대의 수 N(1 ≤ N ≤ 1,000,000)이 주어진다.

둘째 줄에 막대 N개의 길이 L1, L2, ..., LN이 공백으로 구분되어 주어지며, 각 길이는 1 이상 1,000,000,000 이하이다.

출력

첫째 줄에 한 사람에게 줄 수 있는 조각의 최대 길이를 출력한다.

단, 모든 사람에게 같은 길이의 조각을 나눠줄 수 없다면, 0을 출력한다.

예제 입력 1

3 10
1 2 3 4 5 6 7 8 9 10

예제 출력 1

8

예제 입력 2

4 3
10 10 15

예제 출력 2

7

댓글

현재 작성된 댓글이 없습니다.