问题标题: 酷町堂:1292 急!!!

0
0
已解决
范浩轩
范浩轩
资深守护
资深守护

题目描述 De**ion

聪明的卡卡西帮助工人师傅们解决了难题,师傅们为了表示感谢,特别赠送卡卡西一块三角形和一块长方形的两片小木块,并再三叮嘱卡卡西:“卡卡西,这可不是一般的小木块哦,在你迷路或走失时,它们会引领着你到达想去的地方!”“这太神奇了!谢谢!”,卡卡西如获至宝似的将这两块小木块收进包里,整晚都想着下一段奇妙的旅行。早上醒来之后,发现太阳已经高高的挂在空中,小朋友们都不见了,“不好,一定是起的太迟,没跟上大部队,这可怎么办呢?!”卡卡西懊悔的快要哭了,她赶紧站起来,收拾自己的书包,突然,包里的长方形木块和三角形木块飞了出来,组装在一起,形成一个大大的指示箭头,漂浮在空中,“对了,这个箭头一定是在告诉我,如何找到老师和同学”,卡卡西破涕为笑,满心欢喜的跟着箭头,向前方走去。走着走着,她来到了一个原木加工厂,看见老师和小朋友们都围绕在门口,一位工人叔叔正忧心忡忡的坐在地上,不停的抽着烟。卡卡西向前询问情况,这位叔叔说:“这个木材厂主要是把M 根原木切割成N 根长度一样的小段木头,切割时木头可以有剩余,老板让我计算可得到的这N 根小段木头的最大长度(其中原木和小段木头长度都是正整数),可是我不知道该怎么算,你们能帮帮我么?”卡卡西眼前一亮,上前轻轻拍了拍叔叔的肩膀,大声的说:“叔叔,这个你放心,我来帮你完成!”小朋友们,你们能计算出切割的小段木头的最大长度吗?

输入描述 Input De**ion

输入共两行。第一行M、N 用空格分开,分别表示原木数目和需要切割的小段木头数目。接下来一行共M个正整数,分别表示M根原木的长度(中间用空格隔开)。

输出描述 Output De**ion

切割后可得到的N 根小段木头的最大长度。

样例输入 Sample Input

3 7 4 10 26

样例输出 Sample Output

5

数据范围及提示 Data Size & Hint

样例说明:将3 根长度分别是4、10 和26 的原木切割成7 根长度一样的小段木头,这7 根长度一样的小段木头的最大长度是5。
数据范围:0≤M≤100000,0≤N≤100000

范浩轩在2023-08-10 17:01:02追加了内容

没人回?!


0
0
王梓轩
王梓轩
资深光能
资深光能

求解转判定:

check函数伪代码:

bool check(int k)
{
    长整型 ans赋初值为0;
    循环1~m
    {
        ans加等于a[i]/k;
        如果(ans大于等于n)返回1;
    }
    返回0;
}

二分l=1,r=1e18;

注意每一次取中间**右的元素mid=(l+r+1)/2;

所有变量都是long long

我要回答