当前位置:编程学习 > C#/ASP.NET >>

1000瓶汽水之生活版——为啥空瓶数可以为0!为啥可以借瓶子!


先是在博客园看到了这样的问题,又在csdn看到了。对比一下讨论,可以看到很多东西。这个就不多说了,说下我的理解。

答案是可以喝1500瓶,剩0个空瓶。

为啥呢?为了便于解释,我们把问题简化一下,然后在贴近生活一下,让他更合理一点。

(原题不合理的地方是:我们买汽水的时候——玻璃瓶的——要么自己带空瓶,要么交押金。而题目里说可以用三个空瓶换一瓶汽水,这个题设有点不太符合实际。所以我们换成塑料瓶的水。)


某矿泉水,一元钱一瓶。喝完的塑料瓶可以卖0.1元(卖给废品收货站)。

如果赞了10个瓶子,卖给废品收购站,可以换1元钱,这样就可以再买一瓶矿泉水。(当然也可以买别的。)

现在问题来了。我有9元钱,可以喝几瓶水?(简化一下,就不弄1000元钱的了)


答案是10瓶水。


如何做到的呢?9个瓶子只能换0.9元钱,不够再买一瓶的呀?


9元钱买9瓶水,喝掉之后是九个空瓶子。这时看到室友还有一个空瓶子,于是就借过来凑成了10个瓶子。(不要说室友也不会借空瓶,呵呵)

卖掉后换的1元钱,再买一瓶矿泉水,喝完了还剩一个空瓶,正好还给室友。

这样9元钱就喝了10瓶水。没剩空瓶。


计算公式如下:

因为 一个空瓶 + 500ml水 = 1元钱 。

   一个空瓶 = 0.1元。

所以 500ml水 = 0.9 元。

9个空瓶 = 0.9元,所以可以再换 500ml水。只是必须有个容器才能装水,所以向室友“借”了一个瓶子。



塑料瓶可以卖钱,玻璃瓶不知道人家收不收,所以换成塑料瓶,这样就好理解了。

--------------------编程问答-------------------- 我也是“闲的”,哎。 --------------------编程问答-------------------- 其实以前的玻璃汽水瓶一直可以换钱,还有啤酒瓶. 这贴太纠结了 --------------------编程问答-------------------- 呵呵……闲的都开始研究这玩意了!挺有意思的!你的思想是很创意的!我是按你的想法写的一个程序:
int all = 10;         //总瓶数
int drink = 0;          //已经喝掉的数量
int empty = 1;          //最后剩余空瓶子
while (all > 0)
{
    all--;
    drink++;
    empty++;
    if (empty == 10)
    {
        empty = 0;
        all++;
    }
}

Response.Write("已经喝掉的数量:" + drink + "   最后剩余空瓶子:" + empty); --------------------编程问答--------------------

凭空冒出室友这个条件了 --------------------编程问答-------------------- - - 为什么是室友不是大妈~  大妈有瓶子几率更大些~~~ --------------------编程问答-------------------- 蛋疼! --------------------编程问答-------------------- 为什么不可以?

思路为啥不能开阔点? --------------------编程问答--------------------

有点意思~ --------------------编程问答-------------------- 这个。。。。。 --------------------编程问答-------------------- LZ同是无聊之人啊,我在那个贴也贴了N段代码的说   --------------------编程问答-------------------- 其实,这个重点不在于代码,而在于思路。 --------------------编程问答-------------------- 世界万千 --------------------编程问答-------------------- 怎么没想到借的主意 --------------------编程问答-------------------- egg pain --------------------编程问答-------------------- 哎
ya

补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,