题解 | #汽水瓶#

汽水瓶

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

import sys

# for line in sys.stdin:
#     a = line.split()
#     print(int(a[0]) + int(a[1]))


# 递归解决思路
# 如果只有一个空瓶,喝不到水
# 如果有两个空瓶,喝一瓶水,剩下一个空瓶
# 如果有三个及以上的空瓶,喝水i//3瓶+递归函数(i//3+i%3)

def num_drink_water(num):
    res = 0
    if num == 1 or num == 0:
        return 0
    elif num == 2:
        return 1
    else:
        return num//3 + num_drink_water(num//3+num%3)


while True:
    try:
        n = int(input())
        if n!= 0:       #n=0 表示输入结束,你的程序不应当处理这一行。
            print(num_drink_water(n))
    except EOFError as e:
        break

全部评论

相关推荐

被普调的六边形战士很高大:项目经历貌似和专业或者求职方向没大关系?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务