会员专享
请先
登录,登录后可使用今日免费解锁;
开通会员后可解锁完整内容。
核心思想:二分答案
这个问题的目标是“最大化”小明(编号为 k)的苹果数。这类“求最大值的最小值”或“求最大值”的问题,如果答案具有单调性,通常可以考虑使用二分查找(二分答案)来解决。
-
单调性分析:
假设小明最多可以分到 x 个苹果。那么,他一定也可以分到 x−1 个苹果(例如,在 x 的最优方案里,从他的苹果里拿走一个,所有条件仍然满足,只是总苹果数变少了)。反之,如果我们验证出小明无法分到 x 个苹果(即无论怎么分配,总苹果数都会超过 m),那么他也一定无法分到 x+1 个苹果。
因此,小明能分到的苹果数 x 具有单调性,我们可以二分查找这个 x 的最大可能值。
-
构建 check 函数: