herofly


私信TA

用户名:pyhero

访问量:16618

签 名:

等  级
排  名 33
经  验 14299
参赛次数 17
文章发表 321
年  龄 0
在职情况 待业
学  校
专  业

  自我简介:

TA的其他文章

直接用max(),
浏览:161
利用列表解决
浏览:65
列表来解决
浏览:120

解题思路:

注意事项:

参考代码:

n=int(input())
inf=float('inf')
dp=[]
for i in range(n):
    dp.append(list(map(int,input().split())))
#print(dp)
for i in range(n):
    for j in range(n):
        if i!=j and dp[i][j]==0:
            dp[i][j]=inf 
#print(dp)
for i in range(n):
    for j in range(n):
        for k in range(n):
            if dp[j][k]>dp[j][i]+dp[i][k]:
                dp[j][k]=dp[j][i]+dp[i][k]
#print(dp)
for i in range(n):
    for j in range(n):
        if dp[i][j]==inf:
            dp[i][j]=-1
for i in dp:
    for j in i:
        print(j,end=' ')
    print()


 

0.0分

0 人评分

  评论区

  • «
  • »