264. 【20NOIP提高组】移球游戏 中等
时间限制: 1.0s · 内存限制: 512MB · 通过: 0/0
小 C 正在玩一个移球游戏,他面前有 $n + 1$ 根柱子,柱子从 $1 \sim n + 1$ 编号,其中$1$ 号柱子、$2$ 号柱子、· · ·、$n$ 号柱子上各有 $m$ 个球,它们自底向上放置在柱子上,$n + 1$号柱子上初始时没有球。这 $n × m$ 个球共有 $n$ 种颜色,每种颜色的球各 $m$ 个。 初始时一根柱子上的球可能是五颜六色的,而小 C 的任务是将所有同种颜色的球移到同一根柱子上,这是唯一的目标,而每种颜色的球最后放置在哪根柱子则没有限制。 小 C 可以通过若干次操作完成这个目标,一次操作能将一个球从一根柱子移到另一根柱子上。更具体地,将 $x$ 号柱子上的球移动到 $y$ 号柱子上的要求为:
- $x$ 号柱子上至少有一个球;
- $y$ 号柱子上至多有 $m − 1$ 个球;
- 只能将 $x$ 号柱子最上方的球移到 $y$ 号柱子的最上方。 小 C 的目标并不难完成,因此他决定给自己加加难度:在完成目标的基础上,使用的操作次数不能超过 $820000$。换句话说,小 C 需要使用至多 820000 次操作完成目标。 小 C 被难住了,但他相信难不倒你,请你给出一个操作方案完成小 C 的目标。合法的方案可能有多种,你只需要给出任意一种,题目保证一定存在一个合法方案。
提交代码
C++
请先登录
登录后即可提交代码