1块钱可以买一瓶汽水,两个瓶可以换1瓶汽水,那么20可以喝到多少瓶汽水?
很简单、但是很容易出错的一个问题。事实上,关键是最后一步,
你手中只剩下一个空瓶,这个瓶子你可以给老板,并且再向他索要一瓶汽水,喝完之后,将空瓶给他。
引用
这个本来不应该发到论坛中来(仅仅是自己参考用的)。只是不小心发错了,发上来了。希望大家不要见怪,只当是一个脑筋急转弯吧,活跃一下思维而已。程序员嘛,也不应该太较真,是不是。希望大家原谅我这次。
以下是这个问题的Ruby实现:
def sum_bottles(money)
sum=left_bottle=money
single_one=0#单瓶子的个数
while(left_bottle!=1)
if(left_bottle%2!=0)
single_one=1
left_bottle=(left_bottle-1)/2
sum+=left_bottle
else
single_one=0
left_bottle=left_bottle/2
sum+=left_bottle
end
left_bottle+=single_one
end
sum+1#注意要加上这个,最后还可以得到一瓶
end
money=30
p sum_bottles(money)
下面是个简化版本:
def sum_bottles(money)
sum=left_bottle=money
single_one=0
while(left_bottle!=1)
left_bottle%2!=0?single_one=1:single_one=0
left_bottle=(left_bottle-single_one)/2
sum+=left_bottle
left_bottle+=single_one
end
sum+1
end
money=120
p sum_bottles(money)
分享到:
相关推荐
喝汽水,1瓶汽水1元,2个空瓶可以换一瓶汽水,给20元,可以多少汽水。编程实现。要求: (1) 用递归的方法计算能喝到的啤酒数目。 (2) 函数的原型为 int getNum(int n); (3) 不能定义全局变量。
有这样一道智力题:“某商店规定:三个空汽水瓶可以换一瓶汽水。小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?”答案是5瓶,方法如下:先用9个空瓶子换3瓶汽水,喝掉3瓶满的,喝完以后4个空瓶子,用3个再换一...
一块钱能买一瓶啤酒,两个空瓶能换一瓶啤酒,递归实现n块钱能买的啤酒数。 要求: (1) 用递归的方法计算能喝到的啤酒数目。 (2) 函数的原型为 int getNumberOfBeer(int n); (3) 不能定义全局变量。
一块钱能买一瓶啤酒,两个空瓶能换一瓶啤酒,递归实现n块钱能买的啤酒数。 要求: (1) 用递归的方法计算能喝到的啤酒数目。 (2) 函数的原型为 int getNumberOfBeer(int n); (3) 不能定义全局变量。
c程序问题:1元一瓶汽水,两个空瓶可以换一瓶,问20元可以喝多少瓶
1元一瓶汽水,两个空瓶可以换一瓶,问20元可以喝多少瓶.exe
NULL 博文链接:https://amcucn.iteye.com/blog/372385
C++计算n元钱可以喝多少瓶啤酒原理及实现
经典数学问题“空瓶换酒”求解程序,开发语言C/C++(结合Windows SDK) 具体详见:https://blog.csdn.net/paschen/article/details/79840114
仅供娱乐 10元钱买酒2元一瓶,2个瓶子或4个盖子可以兑1瓶酒,最后喝了多少瓶酒
利用c语言编写本程序,简单易懂,可读性好,较为健壮
比如有5个编号瓶子:2 1 3 5 4。要求每次拿起2个瓶子,交换它们的位置。经过若干次后, 使得瓶子的序号为:1 2 3 4 5。对于这么简单的情况,显然,至少需要交换2次就可以复位。如果瓶子更多呢?你可以通过编程来解决...
空矿泉水瓶换水的算法,这种算法非常简单,也比较容易理解
Java逻辑编程:空瓶可换饮料,总共喝了多少瓶饮料
针对目前空瓶检测中存在的误检率高、检测速度慢等问题,设计了一种基于DSP的空瓶缺陷检测系统。该检测系统以TMS320DM642为核心,通过运用图像处理和图像识别方法来实现空瓶缺陷检测。通过对多组空瓶图像检测实验,与...
3、2个空瓶可以兑换一瓶饮料; 4、问题是:最终小明可以喝多少瓶饮料; 至于什么是drools,什么是业务规则引擎,请自行查阅相关资料。 项目基于JDK1.6+,maven环境,drools的相关jar的版本为5.2.0.Final QQ:...
基于计算机视觉的啤酒瓶空瓶检测图像采集技术.pdf
基于计算机视觉的空瓶检测系统.pdf
而 每3个空瓶子又能换1瓶水,喝掉以后又得到一个空瓶子, 问总共能喝多少瓶水,最后还剩余多少个空瓶子? 代码如下: private int Water(int n, int emptyQty) { Console.WriteLine(喝了 + n + 瓶水,多 + emptyQty...
气体瓶进销存管理系统源码+项目说明(主要包含满瓶气体的进货销售、空瓶的收回、返厂等模块,该软件操作简便、灵活,可以使用户轻易上手! 系统包含以下功能: 1.基本信息:气体瓶信息、客户信息、供商信息; 2.业务...