AcWing||1216. 饮料换购
活动地址:https://www.acwing.com/activity/content/19/
考察要点:数学
题目要求
乐羊羊饮料厂正在举办一次促销优惠活动。乐羊羊C型饮料,凭3个瓶盖可以再换一瓶C型饮料,并且可以一直循环下去(但不允许暂借或赊账)。
请你计算一下,如果小明不浪费瓶盖,尽量地参加活动,那么,对于他初始买入的 n 瓶饮料,最后他一共能喝到多少瓶饮料。
输入格式
输入一个整数 n,表示初始买入的饮料数量。
输出格式
输出一个整数,表示一共能够喝到的饮料数量。
数据范围
0<n<10000
输入样例:
100
输出样例:
149
题目地址:https://www.acwing.com/problem/content/1218/
解析:见代码注释
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
int n;
int main()
{
cin >> n;
int res = n; //表示喝到的饮料
while(n >= 3) //现在的n代表瓶盖
{
res += n / 3; //喝的饮料数 += 兑换的饮料
n = n / 3 + n % 3; //瓶盖数 = 兑换来的饮料的瓶盖 + 剩余的未兑换瓶盖
}
cout << res;
return 0;
}
本题:1216. 饮料换购
代码参考:作者 :以梦为马