P2463 [SDOI2008] Sandy 的卡片

题目描述

Sandy 和 Sue 都热衷于收集干脆面中的卡片。 然而,Sue 收集卡片是因为卡片上漂亮的人物形象,而 Sandy 则是为了积攒卡片兑换超炫的人物模型。 每一张卡片都由一些数字进行标记,第 $i$ 张卡片的序列长度为 $M_i$,要想兑换人物模型,首先必须要集够 $N$ 张卡片,对于这 $N$ 张卡片,如果他们都有一个相同的子串长度为 $k$,则可以兑换一个等级为 $k$ 的人物模型。相同的定义为:两个子串长度相同且一个串的全部元素加上一个数就会变成另一个串。 Sandy 的卡片数远远小于要求的 $N$,于是 Sue 决定在 Sandy 的生日将自己的卡片送给 Sandy,在 Sue 的帮助下,Sandy 终于集够了 $N$ 张卡片,但是,Sandy 并不清楚他可以兑换到哪个等级的人物模型,现在,请你帮助 Sandy 和 Sue,看看他们最高能够得到哪个等级的人物模型。

输入格式

第一行为一个数 $N$,表示可以兑换人物模型最少需要的卡片数,即 Sandy 现在有的卡片数。 第 $i + 1$ 行每行第一个数为第 $i$ 张卡片序列的长度 $M_i$,之后 $M_i$ 个用空格分隔的数表示卡片序列。

输出格式

一个数 $k$,表示可以获得的最高等级。

说明/提示

$30\%$ 的数据保证 $n\le50$。 $100\%$ 的数据保证 $n\le1000,2\le M_i\le101$,卡片序列中的每个数字的大小范围为 $[0,1864]$。