解题思路:这题的难度在于找数学规律。规律可以如下

空瓶数量  喝到汽水数量

1              0

2              1(给老板借一个空瓶换一瓶喝完再把空瓶还给老板,或者要一瓶喝完,三个空瓶换一瓶还给老板)

3              1(当然就只能换一瓶汽水了)

4              2(3换1,喝完有两个空瓶,然后重复两个空瓶的操作)

5              2(3换1,重复三瓶的操作)

6              3(换两瓶喝掉,剩下两个空瓶,重复两瓶的操作)

7              3(换两瓶喝掉,刚好剩下三个空瓶)

.....其实到这规律大家都已经发现了,除1个空瓶外,都是每过两次增加一瓶汽水量,大家可以自己再多验证几次就发现了。

n-1            n-1/2取整

n              n/2取整       

注意事项:
转变成程序的语言的时候就是一个很简单的操作,因为是多组数据测试,所以肯定用到循环,又因为程序输入0就结束,所以我们在写循环的时候一定要先判断输入的是否为0,如果是直接跳出循环,如果不是那么就直接输出n/2的整型结果,别记得输出结果以后要换行,不然就会提示格式错误,或者答案错误。

参考代码:

#include<stdio.h>

int main()

{

int n;

do

{

scanf("%d",&n);

if(n==0)

break;

else

   printf("%d\n",n/2);

}while(n!=0);

}


点赞(1)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论