問題:
商店為**汽水瓶,規定3個空瓶換一瓶汽水,乙個人買10瓶汽水喝完之後又拿空瓶去換汽水問他一共可以喝多少瓶汽水?
(隱藏條件:可外借汽水)
買了10瓶汽水,先拿9個汽水瓶換3瓶,再拿3個汽水瓶換1瓶,然後跟別人借1個汽水瓶加上自己的兩個汽水瓶換1瓶,最後把汽水瓶還給別人。
這樣,共可以喝到10+3+1+1=15(瓶)汽水。
最簡單易懂的if判斷如下:
#include
#include
using namespace std;
static
int drink=0;
intmax
(int own)
if(own==2)
if(own>2)
return0;
}int
main()
利用價值理論進行計算:
假設1個空瓶價值1元,那麼,買1瓶汽水需要6元,瓶裡的汽水價值5元,實際上付的應該是48瓶汽水的錢數(不含瓶子)。
n個空瓶換一瓶汽水。相當於每買n-1瓶汽水就能得到n瓶汽水
那麼每一瓶汽水的價值就是(n-1)/n。
所以最後結果應該是,第一次有的數量num,除以這個價值,然後結果向下取整就好了。
這樣按照每瓶酒的價值來算,就避開了中間的兌換過程。
計算公式:10/((3-1)/3) = 15
用 numexchange 個空酒瓶可以兌換一瓶新酒。你購入了 numbottles 瓶酒。如果喝掉了酒瓶中的酒,那麼酒瓶就會變成空的。
請你計算 最多 能喝到多少瓶酒。
int
numwaterbottles
(int numbottles,
int numexchange)
return ans;
}
乙個空瓶價值為1的話,numbottles * numexchange為總價值,至少乙個空瓶最後留在手裡換不了,所以總價值-1,numexchange-1為乙份酒的價值,。
藍橋杯 空瓶換汽水
浪費可恥,節約光榮。飲料店節日搞活動 不用付費,用3個某飲料的空瓶就可以換一瓶該飲料。剛好小明前兩天買了2瓶該飲料喝完了,瓶子還在。他耍了個小聰明,向老闆借了乙個空瓶,湊成3個,換了一瓶該飲料,喝完還瓶!飲料店老闆一統計,已經售出該飲料且未還瓶的有12345瓶,那麼如果這些飲料的買主都如小明一樣聰明...
空瓶換酒001
小區便利店正在 用 numexchange 個空酒瓶可以兌換一瓶新酒。你購入了 numbottles 瓶酒。如果喝掉了酒瓶中的酒,那麼酒瓶就會變成空的。請你計算 最多 能喝到多少瓶酒。給出一開始幾瓶酒,和幾個空瓶能換一瓶酒,然後給出最後能喝得酒數,不能找別人借了再還 空瓶換酒 1 模擬 2 數學 1...
面試 面試題之汽水空瓶子問題
一 題目描述 有這樣一道智力題 某商店規定 三個空汽水瓶可以換一瓶汽水。小張手上有十個空 汽水瓶,她最多可以換多少瓶汽水喝?答案是5瓶,方法如下 先用9個空瓶子換3瓶汽水,喝掉3瓶滿的,喝完以後4個空瓶子,用3個再換一瓶,喝掉這瓶滿 的,這時候剩2個空瓶子。然後你讓老闆先借給你一瓶汽水,喝掉這瓶滿的...