#A0094. 相等数组
相等数组
题目描述
翁老师有一个长度为 的数组 以及一个常数 ,对于任意的 都有 。
翁老师喜欢元素全部相等的数组,因此他想通过以下操作把数组里的元素变得全部相等:
- 选定一个整数 ,满足 。然后令每一个 都变为 。
- 其中 为 的最大公约数,例如 。
请你求出最少几次操作可以使得数组里元素全部相等,若无论多少次都不能达到目标,输出 。
输入格式
本题有多组数据
第一行输入一个整数 代表测试数据组数。每一组数据:
- 第一行输入两个正整数 。
- 第二行输入 个空格隔开的整数分别代表 。
输出格式
对于每一组数据:输出一个整数,代表答案。
每一组数据的结果换行隔开。
3
3 343
343 343 343
5 100
4 8 12 16 20
4 5
2 3 4 5
0
1
2
提示
样例解释
- 第二组数据:令 ,可以使得所有数字都变为 ,因此只需要操作 次。
- 第三组数据:令 ,四个数字分别变为
[2, 1, 2, 1],继续令 ,可以使得四个数组均为 ,可以证明不可能 次操作使得四个数字均相等。
数据范围
对于 的数据,,,,,。
- 子任务 1(30 分):保证 。
- 子任务 2(30 分):保证 。
- 子任务 3(40 分):无特殊限制。
相关
在下列比赛中: