pypy3交都过不去,求优化
查看原帖
pypy3交都过不去,求优化
1227790
MC_xjhjdA楼主2025/1/20 09:10
def main():
    import collections as co
    import sys
    n,m,k=map(int,sys.stdin.readline().split())
    kl,G={int(x) for x in sys.stdin.readline().split()},{x:[] for x in range(1,n+1)}
    for _ in range(m):
        a,b=map(int,sys.stdin.readline().split())
        G[a].append(b)
        G[b].append(a)
    for st_ci in range(1,n+1): #start_city
        qu,vi,fl,m=co.deque([(st_ci,0)]),set([st_ci]),0,10000 #队列
        while qu:
            now,di=qu.popleft()
            if now in kl and now!=st_ci:
                m,fl=di,1
                break
            for ni in G[now]:
                if ni not in vi:
                    vi.add(ni)
                    qu.append((ni,di+1))
        print(m if fl else -1,end=' ')
if __name__=='__main__':
    main()
2025/1/20 09:10
加载中...