P7243 最大公约数
题目背景
“寻求最大公约数是人民民主的真谛。……”
初秋,从枝丫滴下的阳光,柔和,在教室的窗棱溅起,润湿晨读的少女的脸颊。
“阿绫,阿绫”,天依低俯身子,八字辫耷拉在竖起的课本沿,“我们的最大公约数是多少呢?”
“一定不小吧”,左手悄悄捏捏天依的小臂,“比如呀,有一个公因子,叫做‘你喜欢我,我也喜欢你’。”
题目描述
相反,人际圈形形色色,公约数小得可怜,似乎很难保持自己的个性因而变成无趣的人呢。
现在把人际抽象成一个 $n \times m$ 的矩形,每个人初始的个性为 $a_{i,j}$。从第二天开始,每个人会与上下左右四个人(如果存在)建立人际关系,其个性变为昨天自己和四周人个性的最大公约数。那么对于第 $x$ 行第 $y$ 列的人,在多少天后他的个性会变为 $1$ 呢?
----
#### 简化题意
有一个 $n \times m$ 的矩阵 $a$。对一个矩阵进行变换,定义为将这个矩阵内的所有元素变为其上下左右四个元素(不存在则忽略)及自身的最大公约数。询问 $a_{x,y}$ 在进行最少多少次变换之后会变成 $1$。如果可以使 $a_{x,y}$ 经过若干次变换变成 $1$,输出其中最小的次数;否则输出 $-1$。
输入格式
第一行两个整数 $n,m$,表示矩阵的行数和列数。
接下来 $n$ 行,每行 $m$ 个整数,第 $i$ 行第 $j$ 列的整数 $a_{i,j}$ 描述了该位置的人的初始个性。
接下来一行两个整数 $x,y$,表示某个指定的人的位置。
输出格式
一行一个整数 $d$,表示第 $x$ 行第 $y$ 列的人的个性会在 $d$ 天后变为 $1$;**特别地**,若永远不会变为 $1$,应输出 $-1$。
说明/提示
#### 样例解释 3
第一天的个性矩阵(也就是最开始的矩阵)为
$$
\begin{pmatrix}
3&2&3\\
2&3&2\\
3&2&3
\end{pmatrix}
$$
第二天的个性矩阵为
$$
\begin{pmatrix}
1&1&1\\
1&1&1\\
1&1&1
\end{pmatrix}
$$
可见只需要经过一天,$a_{2,2}$ 就会变为 $1$,所以答案为 $1$。
#### 数据规模与约定
**本题采用捆绑测试。**
对于 $100\%$ 的数据,$1\le n,m\le 2\times 10^3$,$1\le a_{i,j}\le 10^{18}$,$1\le x\le n$,$1\le y\le m$。
| 子任务 | 分值 | $n,m$ | 特殊限制 |
| :----: | :--: | :-----------------: | :--------------------------------: |
| 1 | 1 | / | 保证给出的位置个性永远不会变为 $1$ |
| 2 | 1 | / | 保证 $a_{x,y}=1$ |
| 3 | 3 | $ \le 2$ | / |
| 4 | 10 | $ \le 10^2$ | / |
| 5 | 30 | $ \le 5\times 10^2$ | / |
| 6 | 10 | / | 保证对于所有的 $a_{i,j} \le 2$ |
| 7 | 10 | / | 保证 $x$ 与 $y$ 都等于 $1$ |
| 8 | 35 | / | / |
------------