Python|飲料換購

歡迎點擊「算法與編程之美」↑關注我們!

本文首發於微信公衆號:"算法與編程之美",歡迎關注,及時瞭解更多此係列文章。

歡迎加入團隊圈子!與作者面對面!直接點擊!

問題描述

題目:

樂羊羊飲料廠正在舉辦一次促銷優惠活動。樂羊羊C型飲料,憑3個瓶蓋可以再換一瓶C型飲料,並且可以一直循環下去,但不允許賒賬。

請你計算一下,如果小明不浪費瓶蓋,儘量地參加活動,那麼,對於他初始買入的n瓶飲料,最後他一共能得到多少瓶飲料。

樣式要求:

輸入:一個整數n,表示開始購買的飲料數量(0<n<10000

輸出:一個整數,表示實際得到的飲料數

解決方案

一看這種題目就需要循環來實現

每次從有瓶蓋的飲料(假設總數爲n)中拿出三瓶,然後就有了三個瓶蓋,又可以換購一瓶新的,所以每次進行一次這樣的操作,有瓶蓋的飲料數目實際上只減少了2瓶(在這過程中定義一個全局變量count用來存儲用瓶蓋換購的飲料數目)

經過上面的一次操作後有瓶蓋的飲料總數變成了n-2,接着對這n-2瓶飲料進行上面的操作,直至瓶子的數目小於3爲止。最後輸出。(注意輸出的結果是原先飲料的數目加上用瓶蓋換購的飲料數目之和)

Python代碼:

n=int(input())

def ylhg(n):

     sum=n

     while n>=3:

         x=n//3

         sum+=x

         n=n//3+n%3

     return sum

print(ylhg(n))

END

實習編輯   |   王楠嵐

責       編   |   王自強

 where2go 團隊


   

微信號:算法與編程之美          

長按識別二維碼關注我們!

溫馨提示:點擊頁面右下角“寫留言”發表評論,期待您的參與!期待您的轉發!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章