题解 | #汽水瓶#
汽水瓶
https://www.nowcoder.com/practice/fe298c55694f4ed39e256170ff2c205f
#include <cstdio> #include <iostream> using namespace std; int drink_water(int num) { int result=0; if(num<2) result=0; if(num==2) result=1; if(num>2) { result= num/3+drink_water(num%3+num/3);//喝完的空瓶补充 递归思想 } return result; } int main() { int a=0; int num=0; while (cin>>a) { // 注意 while 处理多个 case getchar(); num=drink_water(a); if(num!=0) cout<<num<<endl; } } // 64 位输出请用 printf("%lld")