結果
問題 |
No.2911 位相の公理
|
ユーザー |
![]() |
提出日時 | 2024-10-04 21:54:31 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 702 bytes |
コンパイル時間 | 193 ms |
コンパイル使用メモリ | 82,212 KB |
実行使用メモリ | 645,488 KB |
最終ジャッジ日時 | 2024-10-04 21:54:37 |
合計ジャッジ時間 | 5,751 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 19 WA * 1 MLE * 1 -- * 3 |
ソースコード
N, M = map(int, input().split()) S = [input() for _ in range(M)] for i in range(M): num = 0 for j in range(N): if S[i][j] == "1": num |= 1<<j S[i] = num SET = set(S) if (1<<N)-1 not in SET or 0 not in SET: exit(print("No")) for i in range(M-1): for j in range(i+1, M): if S[i]&S[j] not in SET: exit(print("No")) dp = [[False]*(1<<N) for _ in range(M+1)] dp[0][0] = True for i in range(M): for j in range(1<<N): if not dp[i][j]: continue dp[i+1][j] = dp[i][j] dp[i+1][j|S[i]] = dp[i][j] for i in range(1<<N): if dp[i][j] and i not in SET: print("No") break else: print("Yes")