硬木地板 JDFZ1667

Description

举行计算机科学家盛宴的大厅的地板为M×N (1<=M<=9, 1<=N<=9)的矩形。现在必须要铺上硬木地板砖。可以使用的地板砖形状有两种:
1) 2×1的矩形砖
2) 2×2中去掉一个1×1的角形砖你需要计算用这些砖铺满地板共有多少种不同的方案。
注意:必须盖满,地板砖数量足够多,不能存在同时被多个板砖覆盖的部分。

Input

包含M和N。

Output

输出方案总数,如果不可能那么输出0 。

Sample Input

2 3

Sample Output

5

状压DP,搜索求现在状态能达到的所以状态

#include <cstdio>
#include <algorithm>
#include <cstring>
#include <cmath>
using namespace std;
#define N (1<<11)+3
#define ll long long
ll f[10][N];
struct node
{
    int to,next;
}e[1<<20];
int head[N],cnt;
void add(int x,int y)
{
    e[cnt].to=y;
    e[cnt].next=head[x];
    head[x]=cnt++;
}
int n,m;
void dfs(int s1,int s2,int b1,int b2,int step)
{
    if(step==m)
    {
        if(!b1&&!b2)
        {
            add(s1,s2);
        }
        return ;
    }
    dfs(s1|(b1<<step),s2|((1-b2)<<step),0,0,step+1);
    if(!b1 && !b2)
    {
        dfs(s1|(1<<step),s2,0,0,step+1);
        dfs(s1|(1<<step),s2,1,0,step+1);
        dfs(s1|(1<<step),s2,0,1,step+1);
    }
    if(!b1)
    {
        dfs(s1|(1<<step),s2|((1-b2)<<step),1,0,step+1);
        dfs(s1|(1<<step),s2|((1-b2)<<step),1,1,step+1);
    }
    if(!b2)
    {
        dfs(s1|(b1<<step),s2,1,1,step+1);
    }
}
int main()
{
    memset(head,-1,sizeof(head));
    scanf("%d%d",&n,&m);
    dfs(0,0,0,0,0);
    f[0][(1<<m)-1]=1;
    for(int i=0;i<n;i++)
    {
        for(int S=0;S<(1<<m);S++)
        {
            if(f[i][S])
            {
                for(int k=head[S];k!=-1;k=e[k].next)
                {
                    f[i+1][e[k].to]+=f[i][S];
                }
            }
        }
    }
    printf("%lld\n",f[n][(1<<m)-1]);
    return 0;
}

时间: 2024-10-04 10:38:08

硬木地板 JDFZ1667的相关文章

大海扬波,靠地球自转、潮汐和飓风

忠诚,就忠诚自己的土壤: 追求,就追求自己的理想. --引自友人的诗 这是一曲振奋人心的搏斗之歌.它的主旋律,就是祖国的荣誉高于一切! 人们把体育比喻为一个民族精神的橱窗.那么,就让我们打开中国女排这个小小的窗口,看一看我们中华民族应有的精神风貌吧! 挥动黄手绢唱的歌 公元一千九百七十七年深秋.苍茫的暮色,笼罩着日本的商业都市大阪. 中国女排姑娘们乘坐的大型轿车,顺着五光十色的街道缓缓向前行驶. 多彩的夜景,与中国姑娘们喜悦的心境是相吻合的.今晚,一九七七年世界杯排球赛进入最后一个高潮--发奖.

Slack设计团队告诉你市值28亿美元的秘密武器是什么

编者注:本文来自Medium,作者Andrew Wilkinson,中文版由天地会珠海分舵编译(有根据国情进行删改).Andrew Wilkinson所率领的团队外包了Slack的设计实现,本文从Andrew Wilkinson的角度描述当前市值28亿美元的Slack是如何在众多先行者中突出重围脱颖而出,成为市场的新霸主的- "Slack成功的秘诀究竟是什么?你们团队究竟为其做了什么特别的事情而让它如此的成功呢?",电话另一边是一个来自某个非常成功的SaaS应用的CEO,他正想聘请我们

4星|米歇尔&#183;奥巴马《成为》:从芝加哥贫民区到白宫

成为:米歇尔·奥巴马自传 主要讲作者从记事起,到奥巴马两届总统任期结束离开白宫期间的各种大事小事.大部分相对来说都是小事,估计都是公开披露过的,白宫生活尤其没透露新的内幕. 文笔不错,内容也挺励志.作者的父母都是黑人,都是社区大学辍学.父母没买房子,不去旅游度假,省下的钱用来支持两个儿女读大学.作者和她的哥哥都是普林斯顿大学毕业.作者是法学院的,毕业后在律师事务所认识了奥巴马.之后上班结婚生子,一路陪伴奥巴马竞选州参议员直到入主白宫.奥巴马竞选前她要求万一失败就再也不要从政了,因为实在是太忙对家

bzoj2331 : [SCOI2011]地板 2011-12-20

2331: [SCOI2011]地板Time Limit: 5 Sec  Memory Limit: 128 MBSubmit: 128  Solved: 54[Submit][Status][Discuss]Description lxhgww的小名叫“小L”,这是因为他总是很喜欢L型的东西.小L家的客厅是一个的矩形,现在他想用L型的地板来铺满整个客厅,客厅里有些位置有柱子,不能铺地板.现在小L想知道,用L型的地板铺满整个客厅有多少种不同的方案? 需要注意的是,如下图所示,L型地板的两端长度可

BZOJ 2331 地板(插头DP)

题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=2331 题意:给出一个n*m的地面.有些是障碍.用L型的地板砖铺满.有多少种方案. 思路:用0表示没有插头,用1表示有插头且可以拐弯,用3表示有插头但是不能再拐弯了. 设有m列,轮廓线为[0,m].对于格子(i,j),设左插头x上插头y,那么转移有: (1)x=0,y=0:此时如图1-0,有三种转移,分别是1-1,1-2,1-3; (2)x!=0,y!=0:此时只有当x=y=1时可以转移

有人买过北美枫情地板吗?

在选购地板材料的时候,咱们出了会接触到一些驰名品牌之外,也时有碰到一些不算驰名的二三流地板品牌,报价非常迷人.本日咱们就给咱们先容一个不是很驰名的地板品牌,北美枫情地板的无关信息,咱们将从公司背景,睁开状态和用户评论辩论三方面动手先容:北美枫情地板若何? 一.从公司背景懂得,北美枫情地板若何? 北美枫情地板是江苏省苏州市的嘉丰木业有限公司倾力发明,现在公司主营的多层实木地板.强化地板.单层实木地板和橱柜.此间多层实木地板年产在七百万平米.强化地板为两百万平米.单层实木地板一百万平米而成套橱柜在五

瓷砖覆盖地板

问题:能否用1*2的瓷砖覆盖N* M的地板 扩展问题:        求用1*2的瓷砖覆盖2*M的地板有几种方式?

凯莱地板价格站在客户的角度想问的1号店

需要注意以下三点: 1.需要避免西北方财位有杂物.摆放电视.音响等物品, 4 食品安全很受百姓关注 今年上半年,信得过,同比增长164,施工:胡师傅装修队,装饰墙面好风景,便会产生脱釉现象凯莱地板价格,    一套就要上万元,船画要使船头向屋内,前100名下单的顾客在15天内发货,室内TVOC浓度通常在0.2毫克/立方米到2毫克/立方米之间,省力, 寒流3:产能过剩 加剧倒闭 随着上游房地产市场刚性需求的减少,互联网时代下地板企业需多种营销模式并行 创新营销模 式注重消费者情感需求 在同样竞争环

【BZOJ 2331】 [SCOI2011]地板

2331: [SCOI2011]地板 Time Limit: 5 Sec  Memory Limit: 128 MB Submit: 598  Solved: 264 [Submit][Status][Discuss] Description lxhgww的小名叫"小L",这是因为他总是很喜欢L型的东西.小L家的客厅是一个的矩形,现在他想用L型的地板来铺满整个客厅,客厅里有些位置有柱子,不能铺地板.现在小L想知道,用L型的地板铺满整个客厅有多少种不同的方案? 需要注意的是,如下图所示,