信息
- ID
- 1573
- 时间
- 2000ms
- 内存
- 1024MiB
- 难度
- 10
- 标签
- 递交数
- 1
- 已通过
- 1
- 上传者
若 Xi 与 Y 不互质,则它们至少共享一个质因子。
由于所有 Xi≤50,可能有用的质数只有 2,3,5,…,47 共 15 个;最优答案中每个质因子也只需出现一次,因为提高指数不会覆盖新的 Xi,只会使 Y 变大。因此枚举这 15 个质数的所有非空子集,计算子集内质数的乘积,并检查它是否与每个 Xi 的最大公约数都大于 1,在所有合法乘积中取最小值即可。
质数子集共有 215 个,每个子集检查 N 个数,求最大公约数只需对不超过 50 的数进行对数级运算,所以总时间复杂度为 O(N215log50),空间复杂度为 O(N);全部候选质数之积不超过 64 位有符号整数范围。