#458. cyb 的好消息

cyb 的好消息

说明


cyb 考试得了第一名!

于是他决定让他的小伙伴都知道这个消息,算上他自己,一共有 n 个人,这里我们认为编号为 1 的人就是 cyb 本人

每个人都有一个小本本记录了自己关系好的小伙伴的联系方式,当某个人第一次得到 cyb 考第一名的这个消息以后,他就会立刻按照自己的小本本上的顺序依次打电话给每个小伙伴

每个人打电话通知另一个人需要花费 1 分钟时间

现在 cyb 想知道,当他开始打电话通知人的时候,每个人最快会在几分钟的时候得知这个好消息

输入格式


第一行一个整数 n,表示总人数

接下来 n 行每行包含 ai + 1 个整数,第一个数为 ai ,代表第 i 个人小本本上记录的人的数量,接下来 ai 个数按顺序给出通讯录上人的编号。

记 m=sum{ai} 

保证每个人的小本本上不会有自己的名字和重复的名字

对于前 30\% 的数据,n <= 10, m <= 100

对于前 50\% 的数据,保证当 n>10 时,每个人的小本本上都最多只有一个人

对于 100\% 的数据,n <= 100000, m <= 1000000

输出格式

一行包含 n 个整数,分别代表第 i 个人最快会在第几分钟得知消息,如果第 i 个人无法得到消息,则输出 -1

样例

5
4 2 3 4 5
1 4
0
0
0
1 2 3 3 5