AT_tkppc6_2_j.Common Divisors Shortest Path Queries

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

给定一个由 NN 个顶点组成的无向图。图的边信息由长度为 NN 的数列 AA 表示,具体如下:

  • 对于任意的整数对 (i,j)(i,j)(1≤i<j≤N)(1\le i<j\le N),如果 AiA_i 和 AjA_j 互质,则顶点 ii 和顶点 jj 不相连。
  • 如果 AiA_i 和 AjA_j 有大于 11 的公约数,取这些公约数中的最小值作为 xx,则顶点 ii 和顶点 jj 之间有一条长度为 xx 的边。

总共有 QQ 次查询,给定顶点对 (S,T)(S,T),判断 SS 和 TT 是否连通,若连通则输出从 SS 到 TT 的最短路径长度;否则输出 -1。

输入格式

输入通过标准输入给出,具体格式如下:

$ N $ $ Q $ $ A_1 $ $ A_2 $ $ \cdots $ $ A_N $ $ \text{query}_1 $ $ \text{query}_2 $ $ \cdots $ $ \text{query}_Q $

第 ii 个查询的内容由 $ \text{query}_i $ 表示,格式如下:

$ S $ $ T $

输出格式

输出通过标准输出给出,具体格式如下:

按顺序输出 QQ 行。第 ii 行表示第 ii 个查询的答案,具体如下:

  • 如果顶点 SS 和顶点 TT 连通,则输出从 SS 到 TT 的最短路径长度。
  • 如果顶点 SS 和顶点 TT 不连通,则输出 -1。

输入输出样例

  • 输入#1

    3 3
    10 6 21
    1 2
    2 3
    1 3

    输出#1

    2
    3
    5
  • 输入#2

    2 1
    1 1
    1 2

    输出#2

    -1
  • 输入#3

    8 5
    10 465 800 966 393 217 556 279
    7 6
    6 4
    4 1
    6 2
    1 6

    输出#3

    9
    7
    2
    10
    9

输入解题思路,AI测评打分。不知道怎么写?

首页