配点 : 300 点
問題文
1 から N までの番号がついた N 人の人がいます。彼らはみな、必ず正しい証言を行う「正直者」か、真偽不明の証言を行う「不親切な人」のいずれかです。
人 i は Ai 個の証言を行っています。人 i の j 個目の証言は 2 つの整数 xij , yij で表され、yij=1 のときは「人 xij は正直者である」という証言であり、yij=0 のときは「人 xij は不親切な人である」という証言です。
この N 人の中には最大で何人の正直者が存在し得るでしょうか?
制約
- 入力は全て整数
- 1≤N≤15
- 0≤Ai≤N−1
- 1≤xij≤N
- xij=i
- xij1=xij2(j1=j2)
- yij=0,1
入力
入力は以下の形式で標準入力から与えられる。
N
A1
x11 y11
x12 y12
:
x1A1 y1A1
A2
x21 y21
x22 y22
:
x2A2 y2A2
:
AN
xN1 yN1
xN2 yN2
:
xNAN yNAN
出力
存在し得る正直者の最大人数を出力せよ。
3
1
2 1
1
1 1
1
2 0
2
人 1 と人 2 が正直者であり、人 3 が不親切な人であると仮定すると、正直者は 2 人であり、矛盾が生じません。これが存在し得る正直者の最大人数です。
3
2
2 1
3 0
2
3 1
1 0
2
1 1
2 0
0
1 人でも正直者が存在すると仮定すると、直ちに矛盾します。
2
1
2 0
1
1 0
1