Advertisement

算法编程复习

阅读量:

前言

临近上机考试,因此需要对之前完成过的习题进行一次复习整理,亲自重新手写一遍,仅作为知识回顾之用,若代码风格不够规范还请多多包涵。考试结束后,我会将所考查的重点内容进行标注,便于后续学弟学妹们进行复习参考,2333

迭代递归

汽水瓶(考试考了类似的)

题目描述

有一道经典的逻辑题目如下:“某家商铺制定规则,每收集三个空汽水瓶即可兑换一瓶新的汽水。假设小张目前拥有十个空瓶,她最多能饮用多少瓶汽水?”正确的答案为5瓶,具体操作方式为:首先用其中9个空瓶换取3瓶汽水,饮尽这三瓶后将得到3个新的空瓶,此时共有4个空瓶。接着用其中的3个空瓶再兑换一瓶汽水,饮完后又产生一个空瓶,此时手头共有2个空瓶。此时可向店员借用一个空瓶,凑成3个空瓶再次兑换一瓶汽水饮用。饮完后将该空瓶归还给店员,从而完成整个兑换流程。若小张手中持有n个空汽水瓶,那么她最多可以饮用多少瓶汽水?”

小标题

输入文件中最多可包含10条测试数据,每条数据单独占据一行,仅包含一个范围在1到100之间的正整数n,用于表示小张手中所持有的空汽水瓶数量。当n的值为0时,标志着输入过程的结束,此时程序不应再对这一行内容进行处理。

小标题

针对每组测试数据,生成一行结果,用以表示所能饮用的汽水瓶数的最大值。若无法饮用任何一瓶,则输出数值 0

样例输入

全部评论 (0)

还没有任何评论哟~