Python萌新求助
  • 板块学术版
  • 楼主YUNSI
  • 当前回复2
  • 已保存回复2
  • 发布时间2023/8/28 22:57
  • 上次更新2023/11/3 00:36:29
查看原帖
Python萌新求助
224228
YUNSI楼主2023/8/28 22:57

刚学Python,翻译了个程序,请问各位神犇为什么会运行时错误??

ps:题面在这

def add(st,en,ln):
    ed.append([st,en,ln,g[st]])
    g[st]=len(ed)-1
s=input()
lst=s.split()
n,m,sta,get=lst[0],lst[1],lst[2],lst[3]
g=[-1]*m
for i  in range(m):
    s=input()
    lst=s.split()
    add(lst[0],lst[1],lst[2])
    add(lst[1],lst[0],lst[2])
dis=[2**63]*m
usd=[False]*m
dis[sta]=0
t=0
q.append([0,sta])
while(t!=len(q)):
    a=q[t][1]
    t+=1
    if usd[a]:continue
    usd[a]=1
    i=g[a]
    while(i!=1):
        b=ed[i][1]
        if dis[b]>dis[a]+ed[i][2]:
            dis[b]=dis[a]+ed[i][2]
            if not usd[b]:
                q.append(dis[b],b)
print(dis[get])
2023/8/28 22:57
加载中...