LGP8292口胡


场外选手口胡

如果对质因子这方面熟悉的可以看出来,相当于是我有一车集合,每次给定一个集合,问你有多少种方法选择若干集合使得或起来为给定集合。

首先传统艺能压状态数,将 /(n=/prod p^k/) 全部变为 /(n=/prod p/),很明显不影响。我们将相同的数丢到一个桶里面。然后将这个数的权值变为 /(2^{cnt}-1/)。

然后观察到值域只有 /(2000/),开个根号是 /(44/),/(44/) 以内的质数数量非常少(/(12/) 个),所以传统艺能状压。对于每个数我们也拿出其最大质因子,然后将这个数挂在上面。最大质因子不大于 /(44/) 的数全部挂在一起。

剩下的部分就是或背包了。可以用 FWT 解决。

实现的时候可以考虑挂在一起的数全部先卷一遍,然后维护成点值,一起乘起来。

复杂度是 /(O(V2^{12}/times 12+n+/sum c_i2^{12}+m2^{12}/times 12)/),可以通过。

等什么时候有数据了写出来测一下吧。。。鸽了

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/245323.html

(0)
上一篇 2022年4月18日
下一篇 2022年4月18日

相关推荐

发表回复

登录后才能评论