1960. 传送矩阵
时间限制:1000 MS 内存限制:64 MB
题目描述
## 题目描述 聪明的小火龙陷入了一个$n \times m$的奇怪矩阵,矩阵编号为从 $1$ 到 $n \times m$ (从矩阵左上角开始编号,第$1$行: $1 \sim n $ ,第二行: $n+1 \sim 2*n$ ,以此类推),当前他所在的位置编号为 $1$,而矩阵唯一的出口编号为 $n \times m$。矩阵每个位置都有一个传送门,会把小火龙从当前位置传送到一个指定的位置$(x,y)$ ,现在小火龙想知道他最少需要被传送多少次才能到达出口。 ## 输入格式 第一行是两个正整数$n,m$($1 \le n,m \le 1000$) 。 之后$n \times m$ 行每行两个正整数$x,y$ ,第 $i$行输入表示从编号$i$ 位置会被传送到的指定位置坐标。 ## 输出格式 输出小火龙到达出口所需要的最少传送次数。如果小火龙无法被传送到出口,输出 $-1$。 ## 输入 ```in1 3 3 1 2 1 3 2 3 2 2 2 1 3 1 3 2 3 3 1 1 ``` ## 输出 ```out1 6 ``` ```in2 3 3 1 2 1 3 2 3 2 2 2 1 1 3 3 2 3 3 1 1 ``` ```out2 -1 ``` ## 提示 样例1,首先送到(1,2),然后根据2的位置,送到(1,3),根据3的位置,送到(2,3),根据6的位置,送到(3,1),...(3,3),共6次 子任务 $50\%$:$50$分: 子任务 $50\%$:$50$分: