[Python]两个杯子取水问题

python 复制代码
利用两个杯子巧取三升水:
今天的这个趣味数学小游戏是利用两个没有刻度的水杯,巧妙地取出三升水来。
题目的条件是:一个总容量为6升的杯子和一个总容量为5升的杯子,同时面前有无限容量的水供你使用。不借助其它任何的容器,巧妙地取出3升水来。

思路分析

容量C1大杯子向容量C2小杯子里倒水,大杯子始终会剩余差值C1-C2;

小杯子向大杯子倒水,小杯子加满,第一次倒不满,第二次会剩余一点,大杯子就相当于除数,小杯子里面剩余的是余数,倒的水总量是被除数

由此可得关系,C2 * i % C1 != 3(i是给小杯子加满次数)。

本质是除法取余。

python 复制代码
def getWater(C1,C2):
    i = 0
    while C2 * i % C1 != 3:
        i += 1
    return i

C1 = 6
C2 = 5
print(getWater(C1,C2))

运行结果

python 复制代码
3
相关推荐
weixin_440730505 小时前
函数return、参数、参数组、递归函数、高阶函数等小结
开发语言·python
天赐范式5 小时前
天赐范式第181天:让视图开始切换——PBFT视图切换与从safety到liveness的跨越
python·pbft·数字生命·天赐范式·动态运行时·拜占庭容错
sugarzhangnotes5 小时前
【无标题】
开发语言·人工智能·python
weixin_447195296 小时前
【无标题】
pytorch·python
迅猛龙办公室6 小时前
Python实现简单的人名对话
python
阿坨6 小时前
firestart:一行命令启动你的日常应用和网页
python·pypi·cli·click
蛋蛋的就会顺顺的6 小时前
hot100——矩阵
java·数据结构·算法·leetcode·力扣
老歌老听老掉牙7 小时前
麻花钻切屑形态演变的力学机制与临界条件分析
python·算法·钻头
happylifetree7 小时前
Python18(补充):练习
python
weixin_416667968 小时前
银河麒麟V10看门狗试验-1
网络·chrome·python