
如题,答案到底是 15 还是 20 !!
1 kyrre 2016-02-24 13:08:39 +08:00 20 。 算下来一瓶啤酒除掉酒瓶和瓶盖,酒水 5 毛,所以一共可以喝到 20 瓶。 |
2 873681136 2016-02-24 13:08:57 +08:00 via iPhone 一瓶啤酒(啤酒+1 空酒瓶+1 瓶盖)=2 元 2 空酒瓶=4 瓶盖=一瓶啤酒(啤酒+1 空酒瓶+1 瓶盖) 可以得出:啤酒(纯液体)=0.5 元 于是你 10 块钱可以喝 20 瓶啤酒,前提是店家愿意借你酒瓶或瓶盖 |
3 mmcer 2016-02-24 13:12:06 +08:00 共 15 瓶。 10 元:5 瓶 5 个瓶盖 5 个空瓶换:3 瓶喝完后,剩 4 个瓶盖 4 个空瓶换:3 瓶喝完后,剩 3 个瓶盖, 3 个空瓶换:1 瓶,剩 4 个瓶盖, 2 个空瓶:2 瓶喝完剩 2 个瓶盖, 2 个空瓶,换:1 瓶共 15 瓶。 |
4 Tink PRO 我算的 15 |
5 pright 2016-02-24 13:12:37 +08:00 取决于能不能借空瓶或者借瓶盖,不能借应该是 15 |
6 Tink PRO 前提是不能赊 |
7 xiaoyu9527 2016-02-24 13:15:58 +08:00 div class="sep5"> 5+2+2+1+2+1+2+ 不算了额 |
10 tidezyc 2016-02-24 13:43:10 +08:00 然道不应该是 17 瓶吗? |
12 xmbaozi 2016-02-24 14:04:20 +08:00 我算法也跟 1 楼 一样 |
13 eu 2016-02-24 14:06:04 +08:00 4 瓶 第五瓶就喝不下去了 啤酒喝那么多干嘛! |
14 Yvette 2016-02-24 14:17:31 +08:00 via iPhone 我的算法也跟楼上一样 |
15 pupboss 2016-02-24 14:21:49 +08:00 mOney= 10 price = 2 total = 0 cap = 0 bottle = 0 while money - price >= 0: mOney= money - price total = total + 1 cap = cap + 1 bottle = bottle + 1 if cap == 4: mOney= money + price cap = 0 if bottle == 2: mOney= money + price bottle = 0 print(total) print(money) print(bottle) print(cap) 15 0 1 3 [Finished in 0.1s] |
16 cnkuner 2016-02-24 14:23:29 +08:00 via Android 20 |
17 xjx0524 2016-02-24 14:31:28 +08:00 |
18 JanDai 2016-02-24 14:45:43 +08:00 20 瓶,一次喝这么多酒肯定是先喝完再结账,谁会一买一瓶喝一瓶的。 |
20 wavingclear 2016-02-24 16:25:24 +08:00 允许借就是 20 瓶 把酒、空瓶、瓶盖分别记作 A 、 B 、 C ,未拆封的啤酒就是( A+B+C ) 2 个空酒瓶换一瓶酒表示为 2B => A+B+C , 允许借的大前提 B => A +C , 同理 3C => A + B 3C => A + B => 2A + C , 2C => 2A ,即 C=>A , B=>2A 因为酒瓶正好可以换两个瓶盖,所以不会出现 17 楼所说的情况 5( A+B+C) => 20A |
21 wavingclear 2016-02-24 16:37:23 +08:00 改正: 2C => 2A 约分去掉 2 是不对的 应该是 B + C => A + C + C => 3A , A + B + C => 4A 每两块钱,借 2 个瓶子 2 个瓶盖可以喝 4 瓶酒。 |