乐羊羊饮料厂正在举办一次促销优惠活动。乐羊羊C型饮料,凭3个瓶盖可以再换一瓶C型饮料,并且可以一直循环下去(但不允许暂借或赊账)。
请你计算一下,如果小明不浪费瓶盖,尽量地参加活动,那么,对于他初始买入的 n 瓶饮料,最后他一共能喝到多少瓶饮料。
输入格式
输入一个整数 n,表示初始买入的饮料数量。
输出格式
输出一个整数,表示一共能够喝到的饮料数量。
数据范围
0<n<10000
1
输入样例:
100
1
输出样例:
149
1
思路 :
共喝饮料数r e s resres,当前瓶盖数n nn
赋值给n,且res=n
一直循环直到瓶盖n<3,每次res += n / 3,n变成了新的饮料/3加上剩下的n%3
...
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
int n; cin >> n;
int res = n;
while (n >= 3)
{
res += n / 3;
n = n / 3 + n % 3;
}
cout << res;
}
...