我们经常碰到这个数学题:有容量分别为 A,B,C(A> B > C)的三个容器,刚一开始A装满水,现在问是否只靠三个容器量出K升水。如果能就输出“yes”,并且说明最少倒几次,否则输出“no”。例如:10升水在10升的容器中,另有两个7升和3升的空容器,要求用这三个容器倒水,使得最后在三个容器中有一个刚好存有5升水,问最少的倒水次数是多少?(每次倒水,假设A容器倒到B容器,要么A内的水倒完,要么B容器倒满)。
10 7 3
(10 0 0)
(3 7 0):第一次
(3 4 3):第二次
(6 4 0):第三次
(6 1 3):第四次
(9 1 0):第五次
(9 0 1):第六次
(2 7 1):第七次
(2 5 3):第八次,出现5了。