#716. 不计代价(Hard)
不计代价(Hard)
题目描述
这是该问题的困难版本。版本之间的差异在于,在此版本中, 对于所有 ( ), 。
你有两个长度为 的正整数数组 和 。你可以任意次(也可以 次)对某个位置 做如下操作:
- 将 增加 ,这次操作的代价为 。
问:使得存在两个下标 ()满足 的最小总代价是多少?
其中 表示 与 的最大公约数。
输入格式
-
第 行:一个整数 ,表示测试用例的个数。
-
对于每个测试用例有三行输入:
- 第 行:整数 ()。
- 第 行: 个整数 ()。
- 第 行: 个整数 ()。
保证所有测试用例中 。
输出格式
对于每个测试用例,输出一行,包含一个整数 —— 达到题目要求所需的最小总代价。
样例输入
6
2
1 1
1 2
2
4 8
41 67
5
1 1 727 1 1
1 1 1000 1 1
2
3 11
1 1
3
2 7 11
1 6 6
3
2 7 11
100 1 2
样例输出
3
0
2
1
5
1
说明
样例解释
- 第一个测试用例:初始 。可以对第一个元素加 (代价 )得到 ,再对第二个元素加 (代价 )得到 ,此时 ,总代价 。可以证明不可更小。
- 第二个测试用例:,已满足 ,所以代价 。