来点gcd
题意:
给定一个含有 n n n 个数的序列, m m m 次询问,每次查询给出一个整数 x x x,问是否能在序列中选出一些数,满足这些数的 g c d = x gcd=x gcd=x,如果只选出一个数,那么 g c d gcd gcd 就等于这个数。
思路:
首先要使选出的数的 g c d = x gcd=x gcd=x,那么这些数一定都是 x x x 的倍数。考虑到 n < = 2000 n<=2000 n<=2000,可以预处理所有答案,对于要查询的答案
牛客月赛40 (求子集gcd=x)
最新推荐文章于 2024-09-29 15:13:23 发布
本文探讨了如何在给定数列中快速判断是否存在一组数,其最大公约数等于给定查询值。通过预处理和倍数枚举,解决了查询 gcd 的问题,并介绍了将数字转化为二进制进行哈希匹配的方法来简化判断。

最低0.47元/天 解锁文章
1199

被折叠的 条评论
为什么被折叠?



