結果

問題 No.762 PDCAパス
ユーザー tails1434
提出日時 2020-01-14 22:06:42
言語 PyPy3
(7.3.15)
結果
TLE  
実行時間 -
コード長 734 bytes
コンパイル時間 473 ms
コンパイル使用メモリ 82,176 KB
実行使用メモリ 160,000 KB
最終ジャッジ日時 2024-12-26 13:59:43
合計ジャッジ時間 19,240 ms
ジャッジサーバーID
(参考情報)
judge4 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 34 TLE * 4
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys
input = sys.stdin.readline

def main():
    N, M = map(int, input().split())
    S = input()
    d = [[] for _ in range(N)]
    for _ in range(M):
        u, v = map(int, input().split())
        u -= 1
        v -= 1
        d[u].append(v)
        d[v].append(u)
    match = 'PDCA'

    def dfs(v,pre,cnt):
        if cnt == 3:
            return 1

        res = 0
        for i in range(len(d[v])):
            u = d[v][i]
            if u == pre:
                continue
            if match[cnt+1] == S[u]:
                res += dfs(u,v,cnt+1)

        return res 


    cnt = 0
    for i, s in enumerate(S):
        if s == 'P':
            cnt += dfs(i,-1,0)

    print(cnt)


if __name__ == "__main__":
    main()
0