题目来源:https://www.dotcpp.com/oj/problem1072.html
基本思路:将空瓶子兑换成饮料喝掉后,更新自己手里的空瓶子,一直到最后空瓶子数量不足再兑换一瓶饮料,此时再进行判断,如果手里目前有两个空瓶子即可向老板借一瓶再还上,不足两个空瓶子即无法再喝一瓶。
#include <bits/stdc++.h>
using namespace std;
int num=0;
int Function1(int n)
{
num+=n/3;
if(n/3+n%3>=3)
Function1(n/3+n%3);
else
return n/3+n%3;
}
int main()
{
int n;
while(1)
{
num=0;
cin>>n;
if(n==0)
return 0;
if(Function1(n)==2)
num+=1;
cout<<num<<endl;
}
}