古代集市上,有一个卖油翁,他有一个装满油的油桶,容量为 c 升。同时,他还有两个空油壶,容量分别为 a 升和 b 升,且 a \le b \le c。
现在,卖油翁想通过倒油,使得其中任意一个容器(可以是油桶或油壶)中恰好装有 1 升油。但倒油的过程必须遵循以下规则:
每次只能将一个容器中的油倒入另一个容器。
倒油时,要么将倒出的容器倒空,要么将倒入的容器倒满,两者必居其一。
油不会洒漏,也不会凭空增加或减少。
如果无论如何也无法恰好得到 1 升油,那么他希望某个容器中剩余的油量尽可能少(但不能为空)。请你帮他计算出,在最优操作下,某个容器中能留下的最少油量,以及达到该油量所需的最少倒油次数。
第一行:三个整数 a, b, c,分别表示两个油壶和油桶的容量。
第一行:一个整数,表示某个容器中能留下的最少油量。
第二行:一个整数,表示达到该油量所需的最少倒油次数。
2 3 5
1 2
3 5 8
1 4
105 147 252
21 8
初始状态为 (0, 0, 5),括号内分别表示 (壶a, 壶b, 桶c) 的油量。
此时壶 b 中剩余 1 升,总步数为 2。