题目
思路
代码
#include <stdio.h>
//牛客华为汽水瓶
int sum(int sum1) {
int a, b, c;
a = sum1 % 3; //本轮中无法参与兑换的瓶子
b = sum1 / 3; //本轮中兑换获得的新瓶子
c = a + b; //本轮中剩余的瓶子总和,
if (c >= 3)
return b + sum(c);
else {
if (c == 2)
return b + 1;
else
return 1;
}
}
int main() {
int a, b[100], i = 0, j = 0;
while (1) {
scanf("%d", &a);
if (a == 0)
break;
b[i++] = sum(a);
}
for (; j < i; j++)
printf("%d\n", b[j]);
return 0;
}