解题思路:
找规律,1个空瓶子没得喝,2个可以先找老板借1瓶满的,喝完有3个,换一瓶满的还给老板,
3个喝一瓶,4个先换3个喝一瓶,变成2个,所以是1+1=2
5个先换3个喝一瓶,变成3个,所以是1+1=2
6个先换3个喝一瓶,变成4个,所以是1+2=3
总结得出从0开始,每增加2个空瓶子即可喝多一瓶
从数学角度也能解释,3个空瓶子 = 喝一瓶+1个空瓶子
等式两边各减去 1个空瓶子
2个空瓶子 = 喝一瓶
所以答案直接输出空瓶子数除以2就是可以喝的瓶数
注意事项:
无
参考代码:
#include<stdio.h> int main() { int n; while(1) { scanf("%d",&n); if(n==0)break; printf("%d\n",n/2); } return 0; }
0.0分
2 人评分
汽水瓶 (C语言代码)浏览:764 |
剔除相关数 (C语言代码)浏览:1058 |
【数组的距离】 (C语言代码)浏览:787 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:827 |
A+B for Input-Output Practice (IV) (C语言代码)浏览:484 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:504 |
用筛法求之N内的素数。 (C语言代码)浏览:685 |
C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:702 |
1025题解浏览:796 |
出圈】指针malloc版浏览:377 |