結果

問題 No.92 逃走経路
ユーザー mkawa2
提出日時 2020-01-03 09:51:29
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
AC  
実行時間 143 ms / 5,000 ms
コード長 887 bytes
コンパイル時間 83 ms
コンパイル使用メモリ 12,672 KB
実行使用メモリ 11,008 KB
最終ジャッジ日時 2024-11-22 18:55:26
合計ジャッジ時間 1,983 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 18
権限があれば一括ダウンロードができます

ソースコード

diff #

from collections import *
import sys

sys.setrecursionlimit(10 ** 6)
int1 = lambda x: int(x) - 1
p2D = lambda x: print(*x, sep="\n")
def MI(): return map(int, sys.stdin.readline().split())
def MF(): return map(float, sys.stdin.readline().split())
def LI(): return list(map(int, sys.stdin.readline().split()))
def LF(): return list(map(float, sys.stdin.readline().split()))
def LLI(rows_number): return [LI() for _ in range(rows_number)]

def main():
    n,m,k=MI()
    ctoe=defaultdict(list)
    for _ in range(m):
        a,b,c=MI()
        ctoe[c].append([a,b])
    cc=LI()
    now=set()
    for a,b in ctoe[cc[0]]:
        now.add(a)
        now.add(b)
    for c in cc[1:]:
        nxt=set()
        for a,b in ctoe[c]:
            if a in now:nxt.add(b)
            if b in now:nxt.add(a)
        now=nxt
    print(len(now))
    now=list(now)
    now.sort()
    print(*now)


main()
0