蒟蒻对于第一篇题解的一些疑问
查看原帖
蒟蒻对于第一篇题解的一些疑问
88615
szwyue012楼主2020/11/15 22:07

第一篇题解写着:

dp[S1][S2]dp[S_1][S_2] 表示甲选择的质因数集合是 S1S_1 ,乙是 S2S_2 的总情况数,

对于每个2-n分解质因数,把每个质因数是否出现状压起来存下来,dp的时候从前往后扫

那么可以刷表法做一波 dp[i][S1k][S2]+=dp[i1][S1][S2](k  bitand  S2=0)dp[i][S_1|k][S_2]+=dp[i-1][S_1][S_2](k\;bitand\;S_2=0) ,或者 dp[i][S1][S2k]+=dp[i1][S1][S2](k  bitand S1=0)dp[i][S_1][S_2|k]+=dp[i-1][S_1][S_2](k\;bitand\ S_1=0) ,其中k是当前数的质因数集合, bitandbitand 是位与

但是如果选择了美味值为 ii 的寿司,转移不应该是按照并集来转移吗?

也就是 dp[i][S1k][S2]+=dp[i1][S1][S2]dp[i][S_1|k][S_2]+=dp[i-1][S_1][S_2] ,或者 dp[i][S1][S2k]+=dp[i1][S1][S2]dp[i][S_1][S_2|k]+=dp[i-1][S_1][S_2]

如果满足按位与为0,那么两个集合就不存在交集,就会损失一部分的情况,比如 {2,3,5}\{2,3,5\}{5,7}\{5,7\} ,实际上也能为 {2,3,5,7}\{2,3,5,7\} 做出贡献。

有错误请帮忙指明,非常感谢。

2020/11/15 22:07
加载中...