#P5359. [SDOI2019] 染色

[SDOI2019] 染色

题目描述

给定 2×n2 \times n 的格点图。其中一些结点有着已知的颜色,其余的结点还没有被染色。

一个合法的染色方案不允许相邻结点有相同的染色。

现在一共有 cc 种不同的颜色,依次记为 11cc

请问有多少对未染色结点的合法染色方案?

输入格式

第一行有两个整数nncc,分别描述了格点图的大小和总的颜色个数。

之后两行,每行有nn个整数:如果是 00 则表示对应结点未被染色,否则一定是一个11cc的整数表示对应结点已经染了某一种颜色。

输出格式

输出一个整数,为总的染色方案数对109+910^9+9取模后的值。

3 5
1 0 1
0 0 0
172
5 7
1 0 0 0 2
0 0 3 0 0
116370
10 13
0 2 0 0 1 0 2 0 0 3
0 1 0 1 0 0 0 0 4 0
770175525

提示

子任务11:(4444分)1n100001\le n\le 100005c100005\le c\le 10000;不存在一列有22个已染色结点;被染色结点全部位于第一行;第一列和最后一列均有结点已被染色。

子任务22:(3232分)1n100001\le n\le 100005c100005\le c\le 10000;不存在一列有22个已染色结点;第一列和最后一列均有结点已被染色。

子任务33:(1212分)1n100001\le n\le 100005c100005\le c\le 10000;第一列和最后一列均有结点已被染色。

子任务44:(88分)1n100001\le n\le 100005c100005\le c\le 10000

子任务55:(44分)1n1000001\le n\le 1000005c1000005\le c\le 100000