问题的本质是对一个初始状态进行若干次“增量操作”。

  • 初始状态:拥有 1 根魔法棒。
  • 操作定义:将 1 根变为 根。该操作消耗 1 根,产生 根,因此每次操作的净增量 为: 其中 为正整数且 (若 ,增量为 0,对结果无影响)。
  • 目标方程: 假设通过一系列操作,分别选择了 进行分裂,最终数量 需满足:
  • 转化:判断目标整数 是否能被集合 中的元素通过非负整数线性组合表示。 即判断是否存在非负整数 使得:

数论特性分析(Frobenius Coin Problem)

集合 的前几项为: 观察集合中最小的两个元素

  • 互质性
  • 根据 Frobenius Coin Problem(弗罗贝尼乌斯硬币问题) 的结论,对于两个互质的正整数 ,其非负整数线性组合不能表示的最大整数为
  • 临界点计算: 对于 ,最大不可表示的数为: 这意味着:任何大于 13 的整数 ,都可以仅通过 的组合得到。

完备性证明

虽然集合 中还有 等更大的数,但对于 的情况,使用比 更大的数(如 )是不可能的。因此,对于 的情况,只需要考察是否能由 组成。对于 的情况,仅用 就已足够,更大元素的存在只会增加可行方案,不会减少。

结论:问题简化为检查 是否属于 组合的“不可达集合”。

不可达集合枚举

我们需要找出不能写成 值():

  • 0: 可行 () -> 对应
  • 1: 不可行
  • 2: 不可行
  • 3: 可行 () -> 对应
  • 4: 不可行
  • 5: 不可行
  • 6: 可行 ()
  • 7: 不可行
  • 8: 可行 ()
  • 9: 可行 ()
  • 10: 不可行 (尝试 不可, 不可...)
  • 11: 可行 ()
  • 12: 可行 ()
  • 13: 不可行 (最大不可达数)
  • >13: 全部可行

因此, 的不可达集合。 对应的不可达目标值