結果
問題 | No.2910 単体ホモロジー入門 |
ユーザー |
![]() |
提出日時 | 2024-10-11 23:14:09 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 53 ms / 2,000 ms |
コード長 | 1,203 bytes |
コンパイル時間 | 186 ms |
コンパイル使用メモリ | 81,840 KB |
実行使用メモリ | 56,192 KB |
最終ジャッジ日時 | 2024-10-11 23:14:14 |
合計ジャッジ時間 | 3,920 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 47 |
ソースコード
from collections import deque, defaultdict, Counter from bisect import bisect_left, bisect_right from itertools import permutations, combinations from functools import cmp_to_key, cache from heapq import heappop, heappush import math, sys import pypyjit pypyjit.set_param('max_unroll_recursion=-1') sys.setrecursionlimit(10**7) _int = lambda x: int(x)-1 MOD = 998244353 INF = 1<<62 Yes, No = "Yes", "No" N, M = map(int, input().split()) memo = [[0]*N for _ in range(N)] for _ in range(M): u, v = map(int, input().split()) memo[u][v] = 1 memo[v][u] = 1 S = set(list(map(int, input().split()))) if N >= 3: for p in combinations(range(N), 3): for q in permutations(p): li = list(q)+[q[0]] for i in range(3): if memo[li[i]][li[i+1]] == 0: break else: if S != set(q): print(Yes) exit() if N == 4: for q in permutations(range(4)): li = list(q)+[q[0]] for i in range(4): if memo[li[i]][li[i+1]] == 0: break else: if S != set(q): print(Yes) exit() print(No)