汽水瓶遊戲

2021-10-19 13:15:33 字數 867 閱讀 9096

【遊戲內容】

「某商店規定:三個空汽水瓶可以換一瓶汽水。小張手上有十個空汽水瓶,他最多可以換多少瓶汽水喝?」答案是5瓶

方法如下:先用9個空瓶子換3瓶汽水,喝掉3瓶滿的,喝完以後4個空瓶子,用3個再換一瓶,喝掉這瓶滿的,這時候剩2個空瓶子。然後你讓老闆先借給你一瓶汽水,喝掉這瓶滿的,喝完以後用3個空瓶子換一瓶滿的還給老闆。

問,如果小張手上有n個空汽水瓶,最多可以換多少瓶汽水喝?

【輸入描述】

輸入檔案最多包含10組測試資料,每個資料佔一行,僅包含乙個正整數n(1<=n<=100),表示小張手上的空汽水瓶數。n=0表示輸入結束,你的程式不應當處理這一行。

【輸出描述】

對於每組測試資料,輸出一行,表示最多可以喝的汽水瓶數。如果一瓶也喝不到,輸出0。

示例1:

輸入310

810

輸出

1 5

40

'''遞迴思想'''

import sys

defdrink

(n):

if n <2:

return

0elif n==2:

return

1# 喝過的汽水數 -> n//3

# 剩下的空瓶數 -> n//3 + n%3

return n//

3+drink(n//

3+n%3)

for line in sys.stdin:

n =int(line.strip())

res =

0 res =drink(n)

print

(res)

華為 汽水瓶

有這樣一道智力題 某商店規定 三個空汽水瓶可以換一瓶汽水。小張手上有十個空汽水瓶,她最多可以換多少瓶汽水喝?答案是5瓶,方法如下 先用9個空瓶子換3瓶汽水,喝掉3瓶滿的,喝完以後4個空瓶子,用3個再換一瓶,喝掉這瓶滿的,這時候剩2個空瓶子。然後你讓老闆先借給你一瓶汽水,喝掉這瓶滿的,喝完以後用3個空...

汽水瓶問題

看之前要先把心沉下去,冷靜看完,思路一點不難,首先看下圖,以100為例,100個汽水小明喝到了100瓶,剩下100個瓶蓋,100瓶蓋可以換33瓶汽水,剩下1個瓶蓋,喝完33瓶汽水剩下33 1個瓶蓋於是會發現有這樣的狀態轉移圖。所以不妨定義四個變數,a,b,c,d分別代表喝到的飲料,喝完這波飲料剩的瓶...

汽水瓶 華為

有這樣一道智力題 某商店規定 三個空汽水瓶可以換一瓶汽水。小張手上有十個空汽水瓶,她最多可以換多少瓶汽水喝?答案是5瓶,方法如下 先用9個空瓶子換3瓶汽水,喝掉3瓶滿的,喝完以後4個空瓶子,用3個再換一瓶,喝掉這瓶滿的,這時候剩2個空瓶子。然後你讓老闆先借給你一瓶汽水,喝掉這瓶滿的,喝完以後用3個空...