#agc062f. [agc062_f]Preserve Distinct

[agc062_f]Preserve Distinct

问题描述

NN 副牌,每张牌上写了一个介于 11MM(包括 11MM)之间的整数。第 ii 副牌(1iN1\leq i \leq N)有 KiK_i 张牌,从上往下依次写的数字是 Ai,j (1jKi)A_{i,j}\ (1\leq j \leq K_i)

初始时,牌上的数字满足以下条件:

  • 对于每个整数 x (1xM)x\ (1\leq x \leq M),恰好有两张数字为 xx 的牌,分别在两个不同的牌堆里。
  • 所有牌堆的顶部牌上的数字两两不同。

我们可以对这 NN 副牌执行以下操作:

  • 选择一个还有牌的牌堆,将顶部的牌弃掉。在弃掉后,所有还有牌的牌堆的顶部牌上的数字仍然两两不同。

确定最多能进行多少次这样的操作。

约束条件

  • 2NM2 \leq N \leq M
  • 2M2×1052 \leq M \leq 2 \times 10^5
  • 1KiM1 \leq K_i \leq M
  • 1Ai,jM1 \leq A_{i,j} \leq M
  • 对于每个整数 x (1xM)x\ (1\leq x \leq M),恰好有两对 (i,j)(i,j) 使得 x=Ai,jx=A_{i,j},且两个 ii 的值不同。
  • Ai,1 (1iN)A_{i,1}\ (1\leq i \leq N) 两两不同。
  • 所有输入的值都是整数。

输入

输入以以下格式从标准输入读取:

N MN\ M K1 A1,1 A1,2  A1,K1K_1\ A_{1,1}\ A_{1,2}\ \dots\ A_{1,K_1} K2 A2,1 A2,2  A2,K2K_2\ A_{2,1}\ A_{2,2}\ \dots\ A_{2,K_2} \vdots KN AN,1 AN,2  AN,KNK_N\ A_{N,1}\ A_{N,2}\ \dots\ A_{N,K_N}

输出

打印答案。


示例输入 1

2 4
4 1 2 3 4
4 3 2 1 4

示例输出 1

1

如果你首先对第一堆牌执行操作,这堆牌上的数字将按顺序变成 2,3,42,3,4。在此之后,你不能再对第一堆牌执行操作,因为第一堆和第二堆的顶部牌都会是 33。同样地,你也不能对第二堆牌执行操作。因此,如果你从第一堆牌开始执行操作,你只能执行一次。

即使你从第二堆牌开始执行操作,你也只能执行一次。因此,答案是 11


示例输入 2

4 6
2 6 4
3 2 5 3
4 3 1 5 6
3 4 1 2

示例输出 2

12

通过正确操作,可以弃掉所有的牌。


示例输入 3

3 3
2 1 2
2 2 3
2 3 1

示例输出 3

0

有些情况下无法进行任何操作。


示例输入 4

12 40
4 35 39 11 21
7 31 29 16 15 30 32 34
4 21 27 38 40
11 17 28 26 23 33 22 3 36 8 1 20
1 30
4 40 38 24 6
8 8 36 9 10 5 7 20 4
10 5 10 9 3 22 33 23 26 28 17
4 15 16 29 31
11 19 13 12 18 25 2 39 35 7 14 37
3 4 1 14
13 24 27 11 2 25 18 12 13 19 32 37 6 34

示例输出 4

53