zoukankan      html  css  js  c++  java
  • POJ 3254 Corn Fields

    状态压缩DP

    #include<cstdio>
    #include<cstring>
    
    const int MOD=100000000;
    int dp[15][5000];
    int mapp[15][15];
    
    int main()
    {
        int m,n;
        while(~scanf("%d%d",&m,&n))
        {
            for(int i=1; i<=m; i++)
                for(int j=1; j<=n; j++)
                {
                    int tmp;
                    scanf("%d",&tmp);
                    tmp=!tmp;
                    mapp[i][j]=tmp;
                }
            memset(dp,0,sizeof(dp));
            dp[0][0]=1;
            for(int i=1; i<=m; i++)
            {
                int aaa=0;
                for(int s=1; s<n; s++)
                {
                    aaa+=mapp[i][s];
                    aaa<<=1;
                }
                aaa+=mapp[i][n];
                for(int j=0; j<=(1<<(n))-1; j++)
                {
                    if(j&(j>>1))continue;
                    if(j&(aaa))continue;
                    for(int k=0; k<=(1<<(n))-1; k++)
                    {
                        if(j&k)continue;
                        dp[i-1][k]=dp[i-1][k]%MOD;
                        dp[i][j]=(dp[i][j]+dp[i-1][k])%MOD;
                    }
                }
            }
            int maxit=0;
            for(int i=0; i<=(1<<n)-1; i++)
            {
                dp[m][i]=dp[m][i]%MOD;
                maxit=(maxit+dp[m][i])%MOD;
            }
            printf("%d
    ",maxit);
        }
    
        return 0;
    }
  • 相关阅读:
    java设计模式概述
    Filter
    hello1 hello2 代码分析
    计划
    页面生命周期1
    Jquery
    关于DropDownList
    页面生命周期
    随机生成验证码
    关于技术
  • 原文地址:https://www.cnblogs.com/zufezzt/p/4713956.html
Copyright © 2011-2022 走看看