社区
数据结构与算法
帖子详情
喝酒算法!!!
meng_tenboy
2001-06-05 12:28:00
四个人喝洒,但只有三个形状不规则的酒杯,两个是八两的形状不规则的酒怀,并装满了酒,一个是形状不规则的三两的空的酒怀,问怎么喝才能使四个人每人都喝到四两酒?写出程序或算法!?
...全文
224
14
打赏
收藏
喝酒算法!!!
四个人喝洒,但只有三个形状不规则的酒杯,两个是八两的形状不规则的酒怀,并装满了酒,一个是形状不规则的三两的空的酒怀,问怎么喝才能使四个人每人都喝到四两酒?写出程序或算法!?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
侠雨飞飞
2001-06-12
打赏
举报
回复
嘻嘻
不好意思
漏了
还有下边三种情况
(1,2,1)
(1,1,2)
(2,1,1)
starfish
2001-06-12
打赏
举报
回复
我已经在另外一篇帖子中详细地说明这个问题了
ruijinren
2001-06-12
打赏
举报
回复
你好,我好像还没理解你出题目的意思,你究竟是想要人脑想出这个问题的结果呢,还是要
设计一个算法让计算机搜索出所有可能的结果呢?
zhangshicun
2001-06-08
打赏
举报
回复
starfish(海星):
我没看懂。
meng_tenboy
2001-06-08
打赏
举报
回复
meng_tenboy
2001-06-08
打赏
举报
回复
笨笨虫冲,你的想法很好!!谢谢指点
侠雨飞飞
2001-06-08
打赏
举报
回复
另类:
每个人都可能有五种情况
一 (1,1,1,1)分四次喝,每次喝1两
二 (1,3)分两次喝,第一次1两,第二次3两
三 (3,1)分两次喝,第一次3两,第二次1两
四 (2,2)分两次喝,第一次2两,第二次2两
五 (4)分一次喝完,喝4两
而实际上我们知道第一个人只能喝3两
也就出现如下排列组合
A B C D
(3,1) (1,1,1,1) (1,1,1,1) (1,1,1,1)
(3,1) (3,1) (3,1)
(1,3) (1,3) (1,3)
(2,2) (2,2) (2,2)
(4) (4) (4)
用一个函数来判断每次某个人能否喝下x两酒
int drink(int B1,int B2,int B3,int x)
其中B1是酒杯1现有酒量,B2是酒杯2现有酒量,B3是酒杯3现有酒量,x是假设要喝的酒量
成功则返回1,否则返回0
这个函数很容易,已经实现(无外乎几种可能情况的判断)
用它对上面的可能情况进行验证,即可得最终组合
(人为的用这个函数来验证比写出具体代码用机器执行要容易一些,不信试试,嘻嘻)
去也,去也
~~
meng_tenboy
2001-06-07
打赏
举报
回复
海星,我想知道如何用回溯法来实现喝酒算法?能不能给我一些提示呢?
我想用
struct abc{int a;
int b;
int c;
abc* next;
]为结点,树形的搜索法,类似走迷宫。
meng_tenboy
2001-06-05
打赏
举报
回复
我的问题为什么没人回答?大家仅仅关心“程序员薪水”“什么语言最好”这种不花心力,无厘头的问题吗?我郁闷,我郁闷,我郁闷,我郁闷,我郁闷,我郁闷,我郁闷!!!!
不是我的问题太简单了吧???????
starfish
2001-06-05
打赏
举报
回复
这不是已经有了么(不是我的回答) ,看下面
回复人:made_in_(王了) (2001-6-2 17:12:00) 得0分
8 8 0
5 8 3
5 8 0//A喝3两
2 8 3
0 8 3//B喝2两
3 8 0
3 5 3
6 5 0
6 2 3
8 2 1
8 2 0//A喝一两,已经满4两
8 0 2
7 0 3
7 3 0
4 3 3
4 6 0
1 6 3
1 8 1
0 8 1//C喝一两
0 8 0//D喝一两
0 5 3
0 5 0//C喝三两,已经满4两
0 2 3
0 2 0//D喝三两,已经满4两
0 0 0//B喝二两,已经满4两。完毕。
kingsong
2001-06-05
打赏
举报
回复
想想...
meng_tenboy
2001-06-05
打赏
举报
回复
海星,我看过了!!!没有人回答。笨笨虫冲,你可名名副其实!!!不动脑筋。
高手,大虾你们是不是怕了???
激将法。
starfish
2001-06-05
打赏
举报
回复
这个问题有人问过了,你不要郁闷了,到
http://www.csdn.net/expert/topic/143/143768.shtm
看看吧。
侠雨飞飞
2001-06-05
打赏
举报
回复
每个人先喝3两(很容易实现)
这样,问题就转化成
四个人喝洒,但只有三个形状不规则的酒杯,两个是八两的形状不规则的酒怀,其中一个装了4两酒,一个是形状不规则的三两的空的酒怀,问怎么喝才能使四个人每人都喝到1两酒?
这样,把4两酒平分(可以实现,因为有两个酒杯形状是一样的)
将其中的一个杯子中的2两酒放到3两的空杯中
再把另一个2两平分,哈哈,可以举杯痛饮了——只可惜只有一两酒
然后再把另一个2两平分(此时两个8两杯已空)
喝
这样可以吗?
算法我不会写,嘻嘻
酒我可喝了
~~
模型
算法
讲义讲解+程序源代码:粒子群
算法
优化微分方程模型 饮酒驾车建模matlab源程序function.zip
模型
算法
讲义讲解+程序源代码:粒子群
算法
优化微分方程模型 饮酒驾车建模matlab源程序function.zip
yolo
算法
-dms分神驾驶数据集-15986张图像带标签-
喝酒
或吃饭-安全带打开-睡着的-进食或饮水-手机.zip
yolo
算法
-dms分神驾驶数据集-15986张图像带标签-
喝酒
或吃饭-安全带打开-睡着的-进食或饮水-手机.zip;yolo
算法
-dms分神驾驶数据集-15986张图像带标签-
喝酒
或吃饭-安全带打开-睡着的-进食或饮水-手机.zip;yolo
算法
-dms分神驾驶数据集-15986张图像带标签-
喝酒
或吃饭-安全带打开-睡着的-进食或饮水-手机.zip
算法
与程序框图习题(含答案).doc
算法
与程序框图习题(含答案).doc
资料汇总:数学建模常用
算法
----微分方程.zip
资料汇总:数学建模常用
算法
----微分方程.zip
yolo
算法
-吸烟数据集-1432张图像带标签-手机饮酒眼镜吸烟.zip
yolo系列
算法
目标检测数据集,包含标签,可以直接训练模型和验证测试,数据集已经划分好,适用yolov5,yolov8,yolov9,yolov7,yolov10,yolo11
算法
; 包含两种标签格:yolo格式(txt文件)和voc格式(xml文件),分别保存在两个文件夹中; yolo格式:
, 其中:
是目标的类别索引(从0开始)。
和
是目标框中心点的x和y坐标,这些坐标是相对于图像宽度和高度的比例值,范围在0到1之间。
和
是目标框的宽度和高度,也是相对于图像宽度和高度的比例值
数据结构与算法
33,028
社区成员
35,337
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章