题目描述
现在给你一个正整数数组A和一个正整数k。 希望你求出最大的因数d满足:
upper(a0/d)+upper(a1/d)+upper(a2/d)+……+upper(ai/d)>=k
题目保证有解。
条件:
1.d为整数且不超过数组A中的最大值
2.upper()是向上取整(1.1向上取整是2)
输入格式
第一行是两个正整数n和k(1 ≤ N ≤ 100000,1 ≤ K ≤ 1000000),n是数组A的长度,k是正整数。
接下来的n行,每行有一个1到1000000之间的正整数,表示数组A中的元素
输出格式
输出最大的因数d
输入输出样例
输入 #1
5 6
1 2 3 4 5
输出 #1
4
说明/提示
样例1: upper(1/4) = 1, upper(2/4) = 1, upper(3/4) = 1, upper(4/4) = 1, upper(5/4) = 2, 1+1+1+1+2 = 6
向上取整可以使用cmath中的ceil方法