#P14743. [ICPC 2021 Seoul R] Squid Game
[ICPC 2021 Seoul R] Squid Game
Description
:::align{center}
:::
你是参加一系列带有致命惩罚的儿童游戏的 名玩家之一。穿过若干迷宫般的走廊和楼梯后,你打开了下一个游戏的大门。场上有三个容量无限的桶,每个桶中都装有整数升的水。桶的编号从 到 。桶 、 和 中初始的水量分别给定为 、 和 。
在任何时候,你可以通过从一个桶向另一个桶倒水,使后一个桶中的水量翻倍。具体来说,你可以从一个装有 升水的桶,向一个装有 升水的桶(其中 )倒水,直到后者装有 升水,而前者剩余 升水。注意 和 始终是整数,且 。参见图 J.1。
:::align{center}

图 J.1 一次倒水过程 :::
为了生存,你必须在有限次倒水内清空其中一个桶。幸运的是,这总是可能的。给定三个桶中水的初始量 、 和 ,请编写一个程序,输出一系列倒水操作,直到其中一个桶首次变空为止。
Input Format
你的程序需要从标准输入读取数据。输入的第一行包含三个整数 、 和 (),分别表示桶 、 和 中水的初始量。
Output Format
你的程序需要向标准输出写入结果。第一行应输出直到其中一个桶首次变空为止的倒水次数 。 应不超过 。接下来的 行,每行包含两个整数 和 (),表示你在一次倒水过程中从桶 向桶 倒水。你必须保证在第 次倒水后,其中一个桶首次变空。如果有多种方法可以清空其中一个桶,则输出其中任意一种即可。
1 2 3
2
3 2
3 1
1 4 6
3
2 1
3 1
1 3
Hint
翻译由 DeepSeek V3 完成
京公网安备 11011102002149号