乐羊羊饮料厂正在举办一次促销优惠活动。乐羊羊C型饮料,凭3个瓶盖可以再换一瓶C型饮料,并且可以一直循环下去(但不允许暂借或赊账)。
请你计算一下,如果小明不浪费瓶盖,尽量地参加活动,那么,对于他初始买入的 n 瓶饮料,最后他一共能喝到多少瓶饮料。
输入格式
输入一个整数 n,表示初始买入的饮料数量。
输出格式
输出一个整数,表示一共能够喝到的饮料数量。
数据范围
0<n<10000
输入样例:
100
输出样例:
149
思路:
模拟兑换和喝饮料即可
完整代码(C++):
#include<iostream>
#include<algorithm>
#include<cstring>
#include<cstdio>
using namespace std;
int main()
{
int n;
cin >> n;
int a, b; //a表示瓶子 b表示瓶盖
a = 0;
b = n;
int sum = n;
while(b >= 3)
{
a = b / 3; //兑换完之后饮料的数量
b = b % 3; //兑换完之后瓶盖的数量
sum += a; //喝饮料
b = b + a; //喝完以后剩下瓶盖的数量
a = 0; //喝完以后饮料没有了,进行下一轮的换购
}
cout << sum << endl;
return 0;
}