题目描述
给定正整数 p,q 以及常数 N=1018。现在构建一张包含 N 个结点的带权无向图,结点依次以 1,2,…,N 编号。对于任意满足 1≤u<v≤N 的 u,v,向图中加入一条连接结点 u 与结点 v 的无向边,边权取决于 u,v 是否互质:
- 若 u,v 互质(即 u,v 的最大公因数为 1),则连接结点 u 与结点 v 的无向边长度为 p;
- 否则连接结点 u 与结点 v 的无向边长度为 q。
现在给定 n 组询问,第 i(1≤i≤n)组询问给定两个正整数 ai,bi,你需要回答结点 ai 与结点 bi 之间的最短距离。
输入格式
第一行,三个正整数 n,p,q,分别表示询问数量,结点编号互质时的边权,以及结点编号不互质时的边权。
接下来 n 行,每行两个正整数 ai,bi,表示一组询问。
输出格式
输出共 n 行,每行一个整数,表示结点 ai 与结点 bi 之间的最短距离。
4 4 3
1 2
2 3
4 2
3 5
4
4
3
4
5 2 6
1 2
2 3
4 2
3 5
6 6
2
2
4
2
0
说明/提示
对于 30% 的测试点,保证 1≤n≤10,1≤ai,bi≤50。
对于另外 30% 的测试点,保证 1≤ai,bi≤250。
对于所有测试点,保证 1≤n≤104,1≤ai,bi≤109,1≤p,q≤109。