B. 铺地砖

    传统题 文件IO:domino 1000ms 256MiB

铺地砖

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

T2. 铺地砖 (domino)

来源:CSP-J 入门级模拟题 02 — 递推算法

属性
内存限制 512 MB
时间限制 1000 ms
算法标签 递推、线性DP

题目描述

小明家装修,要用 1×21\times 2 的骨牌铺满一块 2×N2\times N 的矩形地面。骨牌可以竖着放(占 2×12\times 1),也可以横着放(占 1×21\times 2,需要两行并排)。

但是,地面上有 MM 列因为管道凸起而整列都不能铺骨牌(两个格子都损坏)。

请你帮小明计算:有多少种不同的铺法能将剩余的地面铺满?答案可能很大,请对 109+710^9+7 取模。

输入格式 domino.in

第一行两个整数 N,MN, M

接下来 MM 行,每行一个整数 cc,表示第 cc 列整列损坏(1cN1\le c\le N)。保证 cc 互不相同。

输出格式 domino.out

一行一个整数,表示方案数模 109+710^9+7

样例

样例 #1

3 0
3

解释2×32\times 3 无损坏:竖竖竖、竖+两横、两横+竖,共3种。

样例 #2

3 1
2
1

解释:第2列损坏,只能第1列竖放+第3列竖放,共1种。

数据范围

测试点 NN\le MM\le 特殊
1-3 10 0 无损坏
4-6 1000 5 少量损坏
7-10 10510^5 10 无特殊

对于全部数据,1N1051\le N\le 10^50Mmin(2N,100)0\le M\le \min(2N, 100),损坏位置互不相同。

24KOI 2026 体验赛 No.02

未参加
状态
已结束
规则
OI
题目
4
开始于
2026-6-27 13:30
结束于
2026-6-27 17:00
持续时间
3.5 小时
主持人
参赛人数
12