問題文
黒板に 1 以上 M 以下の整数からなる集合 N 個 S1,S2,dots,SN が書かれています。ここで、$S_i = \\lbrace S_{i,1},S_{i,2},\\dots,S_{i,A_i} \\rbrace$ です。
あなたは、以下の操作を好きな回数(0 回でもよい)行うことが出来ます。
- 1 個以上の共通した要素を持つ 2 個の集合 X,Y を選ぶ。X,Y の 2 個を黒板から消し、新たに XcupY を黒板に書く。
ここで、XcupY とは X か Y の少なくともどちらかに含まれている要素のみからなる集合を意味します。
1 と M が両方含まれる集合を作ることが出来るか判定してください。出来るならば、必要な操作回数の最小値を求めてください。
制約
- 1leNle2times105
- 2leMle2times105
- 1lesumi=1NAile5times105
- $1 \\le S_{i,j} \\le M(1 \\le i \\le N,1 \\le j \\le A_i)$
- Si,jneqSi,k(1lej<kleAi)
- 入力は全て整数である。
入力
入力は以下の形式で標準入力から与えられる。
N M
A1
S1,1 S1,2 dots S1,A1
A2
S2,1 S2,2 dots S2,A2
vdots
AN
SN,1 SN,2 dots SN,AN
出力
1 と M が両方含まれる集合を作ることが出来るならば必要な操作回数の最小値を、出来ないならば -1
を出力せよ。
入力例 1
3 5
2
1 2
2
2 3
3
3 4 5
出力例 1
2
まず、lbrace1,2rbrace と lbrace2,3rbrace を選んで消し、lbrace1,2,3rbrace を追加します。
そして、lbrace1,2,3rbrace と lbrace3,4,5rbrace を選んで消し、lbrace1,2,3,4,5rbrace を追加します。
すると 2 回の操作で 1 と M を両方含む集合を作ることが出来ます。1 回の操作では目標を達成できないため、答えは 2 です。
入力例 2
1 2
2
1 2
出力例 2
0
始めから S1 が 1,M を共に含むため、必要な操作回数の最小値は 0 回です。
入力例 3
3 5
2
1 3
2
2 4
3
2 4 5
出力例 3
-1
入力例 4
4 8
3
1 3 5
2
1 2
3
2 4 7
4
4 6 7 8
出力例 4
2