CCF 201709-1 打酱油

CCF 2017-09-1 打酱油

题目

问题描述

  小明带着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瓶。

思路

简单题目,考虑到优先级即可。(如果数字比例不同就有可能需要动态规划,但是这题不需要)

代码

#include<iostream>

using namespace std;

int main()
{
	int n;
	cin>>n;
	int sum=0;
	while(n>=30)
	{
		if(n>=50)
		{
			n-=50;
			sum+=7;
			continue;
		}
		if(n>=30)
		{
			n-=30;
			sum+=4;
			continue;
		}
	}
	sum += n/10;
	cout<<sum;
	return 0;
}