一个小小小小的问题 假设有一个池塘,里面有无穷多的水,现有2个空水壶,容积分别为5升和6升,如何只用这2
一个小小小小的问题假设有一个池塘,里面有无穷多的水,现有2个空水壶,容积分别为5升和6升,如何只用这2个水壶从池塘里取得3升的水。(注:每次灌水壶要灌满;每次倒水水要倒光...
一个小小小小的问题
假设有一个池塘,里面有无穷多的水,现有2个空水壶,容积分别为5升和6升,如何只用这2个水壶从池塘里取得3升的水。(注:每次灌水壶要灌满;每次倒水水要倒光(倒进池塘里去的时候);把水从一个壶里倒进另一个壶里,也要都倒光,除非在倒的过程中另一个壶已经满了;倒水的时候没有损失、蒸发溢出什么的)
欢迎解答! 展开
假设有一个池塘,里面有无穷多的水,现有2个空水壶,容积分别为5升和6升,如何只用这2个水壶从池塘里取得3升的水。(注:每次灌水壶要灌满;每次倒水水要倒光(倒进池塘里去的时候);把水从一个壶里倒进另一个壶里,也要都倒光,除非在倒的过程中另一个壶已经满了;倒水的时候没有损失、蒸发溢出什么的)
欢迎解答! 展开
4个回答
展开全部
A容量 5 B容量 6
B满 倒满A 清空A =》 A 0 B 1
B倒入A =》 A 1 B 0
取池水装满B 倒满A =》 A 5 B 2
清空A =》 A 0 B 2
B倒入A 取池水装满B 倒满A =》 A 5 B 3
B满 倒满A 清空A =》 A 0 B 1
B倒入A =》 A 1 B 0
取池水装满B 倒满A =》 A 5 B 2
清空A =》 A 0 B 2
B倒入A 取池水装满B 倒满A =》 A 5 B 3
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
q形式化倒水问题:无穷多水,容量a,b(a<=b)的水壶倒出c(c<=b)升水。q结论:c%gcd(a,b) == 0 时有解,可用扩展的Euclid定理加以证明:即存在整数x,y,使得ax+by=gcd(a,b).
q通用解法:(容量A,B的水壶倒C升水)nint t = 0;nwhile(t != c){qDo(fill A),Do(pour A B);qt = t+A;qif(t >= B){§t = t – B;§Do(empty B), Do(pour A B);q}n}
n本题解答(5,6->3)nOper a b t (A=5,B=6) qFill A, Pour A B 0 5 5qFill A, Pour A B 4 6 10qEmpty B, Pour A B 0 4 4qFill A, Pour A B 3 6 9qEmpty B, Pour A B 0 3 3 (success)
q通用解法:(容量A,B的水壶倒C升水)nint t = 0;nwhile(t != c){qDo(fill A),Do(pour A B);qt = t+A;qif(t >= B){§t = t – B;§Do(empty B), Do(pour A B);q}n}
n本题解答(5,6->3)nOper a b t (A=5,B=6) qFill A, Pour A B 0 5 5qFill A, Pour A B 4 6 10qEmpty B, Pour A B 0 4 4qFill A, Pour A B 3 6 9qEmpty B, Pour A B 0 3 3 (success)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
问题没写全啊,大概是大杯小杯来回倒取多少水的问题吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询