版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lishang6257/article/details/79746261
目录
问题描述
阿里巴巴的食堂搞活动促销,已知某饮料1瓶3元钱,4个瓶盖可以换一瓶,2个空瓶可以换一瓶,则30元最多可以喝几瓶。
输入
A //A表示饮料单价
B //B表示瓶盖换瓶比
C //C表示空瓶换瓶比
D //D表示给定的钱数输出
S
样例输入输出
- 输入
-
3 4 2 30
3 4 2 9 - 输出
-
35
7
问题分析
- 简单题,注意循环条件带等号
代码实现
IDE : vs code
编译器:MinGW
语言 :C++
#include <iostream>
using namespace std;
int main()
{
int a,b,c,d;
while(cin >> a >> b >> c >> d && a && b && c &&d){
int sum = 0,b1 = 0,c1 = 0,d1 = d;
while(b1 >= b || c1 >= c || d1 >= a){
if(d1 >= a){
b1 += d1/a;
c1 += d1/a;
sum += d1/a;
d1 %= a;
}
if(b1 >= b){
c1 += b1/b;
sum += b1/b;
b1 = b1/b + b1%b;
}
if(c1 >= c){
b1 += c1/c;
sum += c1/c;
c1 = c1/c + c1%c;
}
}
cout << sum << endl;
}
return 0;
}