蓝桥杯 饮料换购
乐羊羊饮料厂正在举办一次促销优惠活动。乐羊羊C型饮料,凭3个瓶盖可以再换一瓶C型饮料,并且可以一直循环下去,但不允许赊账。
请你计算一下,如果小明不浪费瓶盖,尽量地参加活动,那么,对于他初始买入的n瓶饮料,最后他一共能得到多少瓶饮料。
输入格式:
一个整数n,表示开始购买的饮料数量(0<n<10000)
输出格式:
一个整数,表示实际得到的饮料数
输入样例:
在这里给出一组输入。例如:
100
输出样例:
在这里给出相应的输出。例如:
149
输入样例:
在这里给出一组输入。例如:
101
输出样例:
在这里给出相应的输出。例如:
151
思路:
用now表示现有的饮料,sum表示总共的饮料,每次兑换饮料为now%3,兑换后还有的饮料为now%3+now/3,只要now大于等于三就一直循环,每次循环加兑换的饮料(sum+=now/3),结束循环后即可得出总共的饮料。
代码:
#include<iostream>
using namespace std;
int main()
{
int n,now,sum;
cin >> n;
sum = n; now = n;
while (now >= 3)
{
sum += now / 3;
now = now % 3 + now / 3;
}
cout << sum;
return 0;
}