[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
相关推荐
sheeta19981 小时前
LeetCode 每日一题笔记 日期:2025.03.24 题目:2906.构造乘积矩阵
笔记·leetcode·矩阵
数据科学小丫1 小时前
Python 数据存储操作_数据存储、补充知识点:Python 与 MySQL交互
数据库·python·mysql
Knight_AL2 小时前
Nacos 启动问题 Failed to create database ’D:\nacos\nacos\data\derby-data’
开发语言·数据库·python
查古穆3 小时前
python进阶-Pydantic模型
开发语言·python
佳木逢钺3 小时前
PyQt界面美化系统高级工具库:打造现代化桌面应用的完整指南
python·pyqt
工頁光軍3 小时前
基于Python的Milvus完整使用案例
开发语言·python·milvus
Csvn3 小时前
特殊方法与运算符重载
python
xht08324 小时前
PHP vs Python:编程语言终极对决
开发语言·python·php
2401_879693874 小时前
使用Python控制Arduino或树莓派
jvm·数据库·python
查古穆4 小时前
python进阶-推导式
开发语言·python