【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瓶的活动,因为同样的价钱买5瓶的话,得到的酱油瓶数是最多的,同理,判断完5瓶的之后判断3瓶的,最后剩下的就都是单独买的。注意最终求解的时候,5瓶的要乘7(5+2),3瓶的要乘4(3+1)
#include <iostream>
using namespace std;

int main(){
    
    
	ios::sync_with_stdio(false);
	int n;
	cin >> n;
	int a = n/5/10;
	int b = (n-a*5*10)/3/10;
	int c = (n-a*5*10-b*3*10)/10;
	int sum = a*7+b*4+c;
	cout << sum;
	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_45845039/article/details/108555338
今日推荐