问题 G: 容器量水

问题 G: 容器量水

时间限制: 1 Sec  内存限制: 128 MB
提交: 111  解决: 23
[提交] [状态] [讨论版] [命题人:]

题目描述

   我们经常碰到这个数学题:有容量分别为 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了。


输入

  有n组测试数据。
  每组输入a,b,c, k四个正整数( 100 ≥ a > b > c≥1 , 1≤k< 100 )

输出

 如果能得到k就输出两行  第一行“yes”,第二行为最少的次数
  否则输出“no”

样例输入

1
10 7 3 5

样例输出

yes
8

[提交][状态]