粉刷匠
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
windy 有一块木板需要粉刷。木板可以看成是一个 N×M 的网格图,每个格子要被刷成红色或蓝色。在 windy 拿到木板的时候,有 K 个格子已经被刷成了红色或蓝色,这些格子不能再次粉刷。windy 希望粉刷完后,每个 2×2 的正方形内都必须包含奇数个红色格子。
问:windy 能否达成自己的愿望?如果能,他有多少种粉刷方案?答案可能很大,你需要将其 mod 后输出。如果 windy 无法达成愿望,则输出 0。
注:两种粉刷方案不同,当且仅当存在一个格子,在两种方案中被粉刷的颜色不同。
输入格式
第一行:包含 3 个整数 N, M, K
接下来有 K 行,每行 3 个整数 i, j, c, 表示第 i 行第 j 列的格子已经粉刷成了颜色 c;c 只可能为 0 或 1,c = 0 表示蓝色,c = 1 表示红色。
输出格式
包含一个整数,表示答案 mod 。
样例输入
3 4 3
2 2 1
1 2 0
2 3 1
样例输出
8
数据范围
20% 的数据:
50% 的数据:
100% 的数据:$2 ≤ N, M ≤ 10^5; 0 ≤ K ≤ 10^5; 1 ≤ i ≤ n; 1 ≤ j ≤ m;c∈\{0,1\}。$