100 atcoder#ABC147C. [ABC147C] HonestOrUnkind2

[ABC147C] HonestOrUnkind2

Score : 300300 points

Problem Statement

There are NN people numbered 11 to NN. Each of them is either an honest person whose testimonies are always correct or an unkind person whose testimonies may be correct or not.

Person ii gives AiA_i testimonies. The jj-th testimony by Person ii is represented by two integers xijx_{ij} and yijy_{ij}. If yij=1y_{ij} = 1, the testimony says Person xijx_{ij} is honest; if yij=0y_{ij} = 0, it says Person xijx_{ij} is unkind.

How many honest persons can be among those NN people at most?

Constraints

  • All values in input are integers.
  • 1N151 \leq N \leq 15
  • 0AiN10 \leq A_i \leq N - 1
  • 1xijN1 \leq x_{ij} \leq N
  • xijix_{ij} \neq i
  • xij1xij2(j1j2)x_{ij_1} \neq x_{ij_2} (j_1 \neq j_2)
  • yij=0,1y_{ij} = 0, 1

Input

Input is given from Standard Input in the following format:

NN

A1A_1

x11x_{11} y11y_{11}

x12x_{12} y12y_{12}

::

x1A1x_{1A_1} y1A1y_{1A_1}

A2A_2

x21x_{21} y21y_{21}

x22x_{22} y22y_{22}

::

x2A2x_{2A_2} y2A2y_{2A_2}

::

ANA_N

xN1x_{N1} yN1y_{N1}

xN2x_{N2} yN2y_{N2}

::

xNANx_{NA_N} yNANy_{NA_N}

Output

Print the maximum possible number of honest persons among the NN people.

3
1
2 1
1
1 1
1
2 0
2

If Person 11 and Person 22 are honest and Person 33 is unkind, we have two honest persons without inconsistencies, which is the maximum possible number of honest persons.

3
2
2 1
3 0
2
3 1
1 0
2
1 1
2 0
0

Assuming that one or more of them are honest immediately leads to a contradiction.

2
1
2 0
1
1 0
1