题解 | #汽水瓶#

汽水瓶

https://www.nowcoder.com/practice/fe298c55694f4ed39e256170ff2c205f

## 方法1:找规律
#   0    -- 结束循环
#   1    -- 0
#   2,3 -- 1
#   4,5 -- 2
#   6,7 -- 3
#   8,9 -- 4
# 总结:输入数据大于 2 时,所换到的汽水 为 空瓶子的一半,即为 该数除以2取整的结果
import sys

for line in sys.stdin:
    a = int(line.strip().split()[0])
    if a == 0:
        break
    else:
        print(a//2)

## 方法2:递归
import sys

for line in sys.stdin:
    a = int(line.strip().split()[0])
    if a == 0:
        break
    else:
        def qishui(a):
            if a == 2:
                return 1
            else: 
                b = a // 3
                c = a % 3
                if b + c < 2:
                    return b
                else:
                    return b + qishui(b + c)
        print(qishui(a))

全部评论

相关推荐

01-07 15:50
四川大学 Java
看日出看日落:好好背八股,做算法。我身边跟你bg差不多的基本都大厂暑期
点赞 评论 收藏
分享
02-11 17:47
已编辑
门头沟学院 Java
神哥不得了:神哥来啦~建议先在网上找一些高频的八股去背,然后再去广泛的背八股,这样的学习会更有效率一些,简历的这两个项目建议换掉,换成两个高质量的项目,这样的话获得面试的比例会更高一点,专业技能的话排版要注意一下,要加句号的话就都加,要不加就都不加,荣誉奖项的话写在教育经历里边吧,这个确实没有太多的含金量
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务