用 Python 编写程序,在分配糖果时遵循规则,找出有多少孩子会得到糖果

pythonserver side programmingprogramming更新于 2026/2/2 1:16:17

假设我们有 k 个糖果。我们必须将它们分配给孩子们。现在有一些规则

  • 第 i 个孩子将得到 i^2 个糖果
  • 索引 i 处的任何孩子都不会得到任何糖果,直到索引 1 到 i-i 的所有孩子都得到糖果为止
  • 如果第 i 个孩子没有得到 i^2 个糖果,那么这不是有效的服务。

因此,如果输入是 k = 20,则输出将是 3,因为第一个孩子将得到 1,第二个孩子将得到 2^2 = 4,第三个孩子将得到 3^2 = 9,但第四个孩子需要 4^2 = 16,但我们只剩下 6 颗糖果,所以这不是有效的分布,所以只有三个孩子会得到糖果。

为了解决这个问题,我们将遵循以下步骤 −