{"trustable":true,"sections":[{"title":"","value":{"format":"HTML","content":"在萨格勒布的有轨电车网络由许多交叉口和连接它们的铁轨组成。每个交叉口都有一个指向出口铁轨的开关。当有轨电车进入交叉口时,它只能朝开关指向的方向离开。如果司机想要走其他路,就必须手动改变开关。\r\u003cbr\u003e\r\u003cbr\u003e当司机需要从交叉口A到交叉口B时,他/她会尽量选择一条路线,以最小化手动改变开关的次数。\r\u003cbr\u003e\r\u003cbr\u003e编写一个程序,计算从交叉口A到交叉口B所需的最小开关切换次数。\r\u003cbr\u003e"}},{"title":"输入","value":{"format":"HTML","content":"输入的第一行包含三个整数N、A和B,用单个空格分隔,其中2 \u003c\u003d N \u003c\u003d 100,1 \u003c\u003d A, B \u003c\u003d N,N是网络中交叉口的数量,交叉口从1到N编号。\r\u003cbr\u003e\r\u003cbr\u003e接下来的N行中,每行包含一系列整数,用单个空格分隔。第i行中的第一个数字Ki (0 \u003c\u003d Ki \u003c\u003d N-1)表示第i个交叉口出口的铁轨数量。接下来的Ki个数字表示直接连接到第i个交叉口的交叉口。第i个交叉口的开关最初指向列表中的第一个交叉口。\r\u003cbr\u003e"}},{"title":"输出","value":{"format":"HTML","content":"输出的第一行应包含目标最小次数。如果从A到B没有路线,则该行应包含整数“-1”。"}},{"title":"示例","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e3 2 1\r\n2 2 3\r\n2 3 1\r\n2 1 2\r\n\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e0\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e"}}]}