zoukankan      html  css  js  c++  java
  • 【HDU】1400 Mondriaan's Dream

     1 #include<cstdio>
     2 #include<cstring>
     3 #include<vector>
     4 #include<algorithm>
     5 typedef __int64 LL;
     6 using namespace std;
     7 #define MAXN 1<<11
     8 #define MAXM 15
     9 int n,m;
    10 vector<int>G[MAXN];
    11 LL dp[MAXM][MAXN];
    12 bool OK(int a,int b)
    13 {
    14     int i,temp,cnt;
    15     temp=a|b;
    16     for(i=0;i<m;i++)
    17     {
    18         if(!(temp&(1<<i)))
    19             return false;
    20     }
    21     temp=a&b;
    22     for(i=cnt=0;i<m;i++)
    23     {
    24         if(temp&(1<<i))
    25             cnt++;
    26         else
    27         {
    28             if(cnt&1)
    29                 return false;
    30             cnt=0;
    31         }
    32     }
    33     return !(cnt&1);
    34 }
    35 void DoIt()
    36 {
    37     int i,j,k;
    38     memset(dp,0,sizeof(dp));
    39     dp[0][(1<<m)-1]=1;
    40     for(i=1;i<=n+1;i++)
    41     {
    42         for(j=0;j<(1<<m);j++)
    43         {
    44             for(k=0;k<G[j].size();k++)
    45                 dp[i][j]+=dp[i-1][G[j][k]];
    46         }
    47     }
    48     printf("%I64d\n",dp[n+1][0]);
    49 }
    50 void Init()
    51 {
    52     int i,j;
    53     for(i=0;i<(1<<m);i++)
    54     {
    55         G[i].clear();
    56         for(j=0;j<(1<<m);j++)
    57         {
    58             if(OK(i,j))
    59                 G[i].push_back(j);
    60         }
    61     }
    62 }
    63 int main()
    64 {
    65     while(scanf("%d%d",&n,&m),n||m)
    66     {
    67         if(n&m&1)
    68             puts("0");
    69         else
    70         {
    71             if(m>n)
    72                 swap(n,m);
    73             Init();
    74             DoIt();
    75         }
    76     }
    77     return 0;
    78 }
  • 相关阅读:
    react特点和创建虚拟DOM
    vue的keep-alive
    JavaScript-事件委托
    vue-router参数传递
    js常用的字符串处理
    vue-vuex
    vue-组件
    vue-父子组件传值
    堆和栈
    js-深拷贝浅拷贝
  • 原文地址:https://www.cnblogs.com/DrunBee/p/2587141.html
Copyright © 2011-2022 走看看