刚学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])