10.10

时间:2019-11-11
本文章向大家介绍10.10,主要包括10.10使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

A. Adore


 简单状压DP即可。

设f[][]表示第i层的点路径的奇偶为j时的方案数。

答案就是f[m][0]

转移的话大概长这样

for(int i=2;i<=m-1;++i){
        for(int j=0;j<=U;++j){
            if(f[i][j]==0) continue;
            int nxtsta=0;
            for(int d=0;d<=k-1;++d)
                if(j&(1<<d)) nxtsta^=l[i][d];
            f[i+1][nxtsta]=(f[i+1][nxtsta]+f[i][j])%mod;
            if(i==m-1) continue;
            nxtsta=0;
            for(int d=0;d<=k-1;++d)
                if(j&(1<<d)) nxtsta^=fl[i][d];
            f[i+1][nxtsta]=(f[i+1][nxtsta]+f[i][j])%mod;
        }
    }

逐层转移即可。

B. Confess


随机化即可,具体成功原因请参考其它dalao的博客。

C. Repulsed


首先考场发现过程量太多,转移不明确,一定不是DP

其实是一个贪心,不过需要用DP的过程来实现。

设g表示以i为根的子树距离为j的还没放油桶数量。

设f表示以i为根的子树距离为j的剩下的油桶数量。

原文地址:https://www.cnblogs.com/hzoi2018-xuefeng/p/11834069.html