2020网易:访友[python][动态规划][贪心]

访友

http://www.nowcoder.com/questionTerminal/b8e21f5816874425836b7d32011f46b0

贪心:未到达终点前每一次走的越远越好;由于步数从1~5,不担心直接越过终点, 所以直接对五求商向上取整就好。不过这种题目假设给个能否走到的变体条件可能就要靠动态规划才比较好解了。

from math import ceil
x = int(input())
print(ceil(x/5))

动态规划:TLE

x = int(input())
steps = [1, 2, 3, 4, 5]
dp = [float('inf')] * (x+1) # dp[i]还剩多少步需要走几次
dp[0] = 0

for i in range(x+1):
    for s in steps:
        dp[i] = min(dp[i-s]+1, dp[i]) if i >= s else dp[i]

print(dp[-1])

镜像题目:https://blog.nowcoder.net/n/5b407a78951f460d85f1c27378338860

全部评论

相关推荐

牛客41406533...:回答他在课上学,一辈子待在学校的老教授用三十年前的祖传PPT一字一句的讲解,使用谭浩强红皮书作为教材在devc++里面敲出a+++++a的瞬间爆出114514个编译错误来学这样才显得专业
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
11-10 11:42
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务