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))