有N个点,把这N个点划分成M个集合,集合内的任意两点距离都等于Di,这样的图被称为Orz图。
一个集合可能包含多个点,一个点可能被多个集合包。
现在有两个机器人,分别从编号1和编号N出发,每秒走一个单位的距离,他们要求在某一点(1~N)汇合,求两个机器人汇合的最短时间,如果不存在路径则输出-1。
有多组测试案例,
每组测试案例,第一行输入N和M(1<=N<=1000,1<=M<=1000),表示有N个点,M个集合。
接下来有M行,每行输入Di和n(1<=Di<=1000,1<=n<=N),分别表示集合内的任意两点距离都等于Di,第i个集合内有n个点,紧接着输入n个点的编号,表示第i个集合内的n个点的编号。
对于每组测试案例,输出编号1和编号N最短的时间.
3 3 1 1 1 1 1 2 1 1 3 3 3 1 2 1 2 1 1 2 1 2 2 3
-1 1