概述
可以利用floyd算法解决 ,算法参考了大佬的文章,很详细
最短路径——Dijkstra算法和Floyd算法_凌晨的咸鱼的博客-CSDN博客_floyd算法和dijkstra算法
十分感谢!
代码如下:
def func(x, y):
a, b = x, y
while b:
a, b = b, a % b
return x * y // a
n = int(input())
dp = [float('inf')] * (n + 1)
dp[1] = 0
for i in range(1, n + 1):
for j in range(1, 22):
if i + j > n:
break
dp[i + j] = min(dp[i + j], dp[i] + func(i, i + j))
print(dp[n])
最终答案为:10266837
最后
以上就是暴躁爆米花为你收集整理的【蓝桥杯】【Python】路径的全部内容,希望文章能够帮你解决【蓝桥杯】【Python】路径所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复