• <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 閱讀(377) 評論(0)  編輯 收藏 引用
            国产精品伊人久久伊人电影| 精品久久久久久久无码| 久久久久一级精品亚洲国产成人综合AV区| 狠狠狠色丁香婷婷综合久久五月| 精品国产青草久久久久福利| 亚洲精品成人久久久| 精品熟女少妇a∨免费久久| 国产精品欧美久久久久无广告| 久久人做人爽一区二区三区| 久久精品这里热有精品| 久久精品国产亚洲AV久| 久久AAAA片一区二区| 一本一本久久A久久综合精品 | 亚洲国产精品久久66| 热久久最新网站获取| 亚洲国产精品久久66| 亚洲AV日韩AV天堂久久| 亚洲精品成人久久久| 久久精品成人| 91性高湖久久久久| 久久精品国产亚洲av日韩| 久久久久精品国产亚洲AV无码| 婷婷久久综合九色综合98| A狠狠久久蜜臀婷色中文网| 久久婷婷国产剧情内射白浆| 无码乱码观看精品久久| 激情久久久久久久久久| 久久九九免费高清视频| 国产精品丝袜久久久久久不卡| AV色综合久久天堂AV色综合在 | 精品国产日韩久久亚洲| 久久亚洲天堂| 久久久精品国产| 亚洲乱码日产精品a级毛片久久| 久久国产视频网| 久久亚洲视频| 久久这里只有精品首页| 亚洲午夜久久久影院| 久久亚洲国产成人精品性色| 久久精品亚洲精品国产色婷| 精品久久久无码人妻中文字幕豆芽|