結果
| 問題 | No.1689 Set Cards |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2025-02-26 11:54:52 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 688 bytes |
| コンパイル時間 | 273 ms |
| コンパイル使用メモリ | 82,660 KB |
| 実行使用メモリ | 79,540 KB |
| 最終ジャッジ日時 | 2025-02-26 11:54:59 |
| 合計ジャッジ時間 | 4,594 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 WA * 2 |
| other | AC * 2 WA * 21 |
ソースコード
MOD = 998244353
N = int(input())
A = []
for _ in range(N):
a = list(map(int,input().split()))
A.append(set(a[1:]))
M = 0
for i in range(N):
a = 0
if len(A[i])==0:
a = 0
else:
a = max(A[i])
M = max(M,a)
I = [set() for _ in range(M+1)]
for j in range(1,M+1):
for i in range(N):
if j in A[i]:
I[j].add(i)
ans = 0
for k in range(1,1<<M):
J = set(list(range(N)))
cnt = 0
for j in range(M):
if (k>>j)&1:
J &= I[j+1]
cnt += 1
if cnt%2==0:
ans = (ans-pow(2,len(J),MOD)-1)%MOD
else:
ans = (ans+pow(2,len(J),MOD)-1)%MOD
ans = (pow(2,N,MOD)-1-ans)%MOD
print(ans)