#2332. 20210919小学组-分糖果
20210919小学组-分糖果
Description
现在要给 个人分掉 块糖。每块糖要么分给某个人,要么被扔掉(不会有掰一半的情况)。初步设想的分糖策略是这样的:
先给参加分糖的 个人按从 到 的次序编上号,小 的序号是 。首先,小 从所有的糖果中拿出 块给自己,接着拿出 块给编号为 的人,……,当给完最后一个人后,如果还有足够的糖果,这个过程会再次从 号开始。如果到某个人的时候,剩余的糖果不够 个,那么就扔掉剩余的糖果。小 不会选择一个大于 的数作为 ,也不会选择一个过小的 以至于某个人被分糖的次数超过了 (这样会让大家觉得太繁琐了)。
请问:小 通过选择一个合适的 ,最多能让自己得到多少糖果?
Input Format
仅有一行,包含 个整数 ,含义如题目所述。
Output Format
一行,仅有一个整数,表示题目要求的结果。
20 4 5 2
8
30 9 4 1
4
Hint
数据范围:
对于所有数据: , , ; 对于 的数据,, , ; 对于另外 的数据:, , 。
样例解释:
第一个例子中,小 应该选择 ,他会给自己 块糖,分别给第二、三、四个人 块糖,最后再给自 块糖。没有人被给了超过 次糖,小 最终收到 块糖。如果小 选择 ,他只会收到 块糖;如果 小 选择 ,他会收到 块糖,与第二个人一样;第三个人会收到 块糖,最后 块糖会被扔掉。他不能选择 或 ,因为这样会导致他收到糖的次数大于 。
第二个例子中,小 必须选择 ,因为任何小于 的值都会导致他少收到一次糖。