CCF — 打醬油(Python實現:100分)
阿新 • • 發佈:2019-01-07
2017.09.1 打醬油
目錄
前言
最近我在做CCF的題目,也打算把每道題的解題思路都寫到部落格上來,希望能幫助到也在做CCF題目的讀者們,希望你們通過本文能有所提示,幫助大家提升程式設計能力。另外有個很好的想法就是,建議讀者們可以先看一下問題分析的部分,然後自己再整理一下思路,重新做一遍,最後再參考程式碼,我想這樣會更有收穫。
一、問題描述
問題描述
小明帶著N元錢去買醬油。醬油10塊錢一瓶,商家進行促銷,每買3瓶送1瓶,或者每買5瓶送2瓶。請問小明最多可以得到多少瓶醬油。
輸入格式
輸入的第一行包含一個整數N,表示小明可用於買醬油的錢數。N是10的整數倍,N
不超過300。輸出格式
輸出一個整數,表示小明最多可以得到多少瓶醬油。
樣例輸入
40
樣例輸出
5
樣例說明
把40元分成30元和10元,分別買3瓶和1瓶,其中3瓶送1瓶,共得到5瓶。
樣例輸入
80
樣例輸出
11
樣例說明
把80元分成30元和50元,分別買3瓶和5瓶,其中3瓶送1瓶,5瓶送2瓶,共得到11瓶。
二、問題分析
這道題的主要解題思路如下:
分成三種情況:優先買5瓶送2瓶的情況,再買3瓶送1瓶的情況、最後才買10元1瓶的情況;依次迴圈,直到花光所有金錢。
三、程式說明
n:輸入n元錢
count:買醬油的瓶數
python語言的程式如下(100分):
n = int(input())
count = 0
while n != 0:
if n >= 50:
n -= 50
count += 7
continue
if n >= 30 and n < 50:
n -= 30
count += 4
continue
if n < 30:
count += (n/10)
n = 0
print('%d' %(count))