• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-65  評論-6  文章-0  trackbacks-0
             1 #include <iostream>
             2 using namespace std;
             3 typedef __int64 LL;
             4 #define MaxSize 12
             5 LL num[MaxSize][MaxSize];
             6 LL dp[MaxSize][2049];
             7 int h,w,MaxN;
             8 
             9 bool test(int val){
            10     int i,sum;
            11     for(i=0;i<w;i++){
            12         sum=0;
            13         while (val & (1<<i))
            14             sum++,i++;
            15         if(sum & 1)    return false;
            16     }
            17     return true;
            18 }
            19 LL getAw(int step,int status){
            20     if(step==1){//臨界狀態
            21         if(test(status))    return 1;
            22         return 0;
            23     }
            24     if(dp[step][status]!=-1)
            25         return dp[step][status];
            26     int i,temp,last=~status;
            27     LL sum=0;
            28     last &= MaxN;
            29     for(i=0;i<=MaxN;i++){
            30         if( (i&last) != last)
            31             continue;
            32         temp=i & status;
            33         if(test(temp))
            34             sum+=getAw(step-1,i);
            35     }
            36     dp[step][status]=sum;
            37     return sum;
            38 }
            39 
            40 int main(){
            41     //freopen("in.txt","r",stdin);
            42     memset(num,-1,sizeof(num));
            43     while (scanf("%d %d",&h,&w),(h||w)){
            44         if(h*w & 1){
            45             puts("0");
            46             continue;
            47         }
            48         if(h<w)
            49             h^=w,w^=h,h^=w;
            50         if(num[h][w]!=-1){
            51             printf("%I64d\n",num[h][w]);
            52             continue;
            53         }
            54         int i,j;
            55         MaxN=(1<<w)-1;
            56         for(i=1;i<=h;i++)
            57             for(j=0;j<=MaxN;j++)
            58                 dp[i][j]=-1;
            59         num[h][w]=num[w][h]=getAw(h,MaxN);
            60         printf("%I64d\n",num[h][w]);
            61     }
            62     return 0;
            63 }
            posted on 2012-07-14 14:55 Leo.W 閱讀(368) 評論(0)  編輯 收藏 引用
            一本色道久久88加勒比—综合| 久久综合欧美成人| 久久综合视频网站| 91精品免费久久久久久久久| 99久久精品免费国产大片| 国产高潮久久免费观看| 国产亚洲色婷婷久久99精品91| 国产精品成人99久久久久| 久久国产视屏| 久久人妻AV中文字幕| 亚洲人成精品久久久久| 久久久无码精品亚洲日韩按摩| 久久精品人成免费| 久久精品国产秦先生| 久久久久无码专区亚洲av| 欧美伊人久久大香线蕉综合| 久久国产欧美日韩精品免费| 久久精品日日躁夜夜躁欧美| 久久99国产综合精品女同| 久久免费精品一区二区| 色婷婷噜噜久久国产精品12p| 中文字幕久久精品无码| 免费观看久久精彩视频| 久久性精品| 久久久久亚洲av无码专区导航| 欧美777精品久久久久网| 婷婷久久综合| 99久久99久久| 亚洲精品无码久久毛片| 97久久婷婷五月综合色d啪蜜芽| 久久99久久99精品免视看动漫| 精品久久人人妻人人做精品 | 久久国产视频网| 久久乐国产综合亚洲精品| 无码AV中文字幕久久专区| 2020最新久久久视精品爱| 久久亚洲精品成人无码网站 | 久久国产免费| 久久精品中文无码资源站 | 国产福利电影一区二区三区久久老子无码午夜伦不| 亚洲国产天堂久久综合网站|