printРабочее место участника

printЗадачи

1946. Hypertubes

Ограничения: время – 1s/2s, память – 64MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

In a galaxy far, far away, the fastest method of transportation is using hypertubes. Each hypertube directly connects `K` stations with each other. What is the minimum number of stations that we need to pass through in order to get from station 1 to station `N`?
The first line of input contains three positive integers: `N` (`1\ ≤\ N\ ≤\ 100\ 000`), the number of stations, `K` (`1\ ≤\ K\ ≤\ 1\ 000`), the number of stations that any single hypertube directly interconnects, and `M` (`1\ ≤\ M\ ≤\ 1\ 000`), the number of hypertubes.
Each of the following `M` lines contains the description of a single hype rtube: `K` positive integers, the labels of stations connected to that hypertube.
The first and only line of output must contain the required minimum number of stations. If it isn't possible to travel from station 1 to station `N`, output –1.

Sample Input #1

9 3 5
1 2 3
1 4 5
3 6 7
5 6 7
6 8 9

Sample Output #1

4

Sample Input #2

15 8 4
11 12 8 14 13 6 10 7
1 5 8 12 13 6 2 4
10 15 4 5 9 8 14 12
11 12 14 3 5 6 1 13

Sample Output #2

3
Clarification of the first example: It is possible to travel from station 1 to station 9 using only four stations in the following ways: 1-3-6-9, or 1-5-6-9.
Source: COCI 2012/2013, contest #5
loading