#BN202606. 魔法绳索

题目:魔法绳索

题目描述

魔法工坊中有 N 根绳索,第 i 根绳索的长度为 a_i。

现在,工匠需要从这些绳索中截取出至少 K 段长度相同的魔法绳。

每段魔法绳的长度必须是正整数,并且:

  • 每根绳索可以被切成若干段;
  • 不同绳索切出的绳段长度必须相同;
  • 每根绳索剩余的部分可以丢弃;
  • 不能把两根绳索拼接后再切割。

请你计算:每段魔法绳的长度最大是多少。


输入格式

第一行包含两个正整数 N 和 K:

  • N 表示绳索的数量;
  • K 表示至少需要的魔法绳段数。

第二行包含 N 个正整数:

a_1, a_2, ..., a_N

表示每根绳索的长度。


输出格式

输出一个整数,表示每段魔法绳的最大长度。

如果无法截取出至少 K 段长度相同的正整数绳段,输出 0。


样例输入

4 7
10 15  20 8

样例输出

5

样例说明

当每段绳子的长度为 5 时:

  • 长度为 10 的绳子可以截出 2 段;
  • 长度为 15 的绳子可以截出 3 段;
  • 长度为 20 的绳子可以截出 4 段;
  • 长度为 8 的绳子可以截出 1 段。

一共可以截出:

2 + 3 + 4 + 1 = 10

段,满足至少 7 段的要求。

当每段长度为 6 时:

10 / 6 + 15 / 6 + 20 / 6 + 8 / 6
= 1 + 2 + 3 + 1
= 7

也可以截出 7 段。

当每段长度为 7 时:

10 / 7 + 15 / 7 + 20 / 7 + 8 / 7
= 1 + 2 + 2 + 1
= 6

不足 7 段。

因此答案应该为 6。


数据范围

对于所有测试数据:

  • 1 ≤ N ≤ 10^5
  • 1 ≤ K ≤ 10^14
  • 1 ≤ a_i ≤ 10^9

保证所有 a_i 的总和不超过 10^14。


Problem Info

#BN202606. 魔法绳索

ID 10332
类型 传统题
时间 1000ms
内存 256MiB
尝试 0 已通过 0
难度 1
上传者
标签
二分答案2026年复赛右边界