饮料换购

发布时间 2023-03-26 11:46:44作者: bujidao1128

饮料换购

题目描述

乐羊羊饮料厂正在举办一次促销优惠活动。乐羊羊 C 型饮料,凭 3 个瓶盖可以再换一瓶 C 型饮料,并且可以一直循环下去(但不允许暂借或赊账)。

请你计算一下,如果小明不浪费瓶盖,尽量地参加活动,那么,对于他初始买入的 n 瓶饮料,最后他一共能喝到多少瓶饮料。

输入描述

输入一个整数 n(0<n<1000),表示开始购买的饮料数量。

输出描述

输出一个整数,表示实际得到的饮料数

输入输出样例

示例

输入

100

输出

149

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 256M

提交答案

#include<bits/stdc++.h>
using namespace std;
int main()
{
  int n,yu,count;//初始数目,余数,总数
  cin>>n;//以初始值为100瓶为例子
  count=n;//初始值为100,就可以喝100瓶,所以count初始值直接赋值为n
  while(n>=3){//只要n>=3就可以换
  //注意yu=n%3;喝n=n/3;不能换顺序
    yu=n%3;//n瓶换完之后还剩多少瓶,100瓶换完之后还剩1瓶
    n=n/3;//n瓶能换多少瓶,100瓶能换33瓶
    count+=n;//count加上我能喝多少瓶,就是到目前为止我能喝多少瓶
    n+=yu;//现在新的有多少个瓶盖,等于之前已经换过来多少瓶的数目加上换完之后还剩多少瓶
  }
  cout<<count<<endl;
  return 0;
}