题解 | C++ #汽水瓶#
汽水瓶
https://www.nowcoder.com/practice/fe298c55694f4ed39e256170ff2c205f
#include <iostream>
using namespace std;
void bottle_num(int& num, int& total){
while((num / 3) != 0){
total +=( num / 3); // 总数增加
int tmp = num % 3 + num / 3;
num = tmp;
}
if((num + 1) % 3 == 0){
bottle_num(++num, total);
}
}
int main() {
int num;
while (cin >> num) {
int total = 0;
if(num == 0){
break;
}
bottle_num(num, total);
cout << total << endl;
}
return 0;
}
变量定义的位置很重要,尤其是针对多次循环输入。

