CF895C Square Subsets (组合数+状压DP+简单数论)
题目大意:给你一个序列,你可以在序列中任选一个子序列,求子序列每一项的积是一个平方数的方案数。
1<=a[i]<=70
因为任何一个大于2的数都可以表示成几个质数的幂的乘积
所以我们预处理70以内的质数,把它作为二进制状压的状态,每个在序列中出现数Hash一下,组合数推一下
所以把奇次幂的状态表示为1,偶次幂的状态就是0,比如6就是11,42就是1011
而平方数的每个质因子...
原创
2018-08-16 23:23:44 ·
224 阅读 ·
0 评论