/ Vijos / 题库 /

对称图

对称图

时间限制:1秒  内存限制:256M


【问题描述】

  有一片透明玻璃,我们可以在上面涂色。涂色后,你可以对它做两种操作:

  1.旋转,顺时针或逆时针旋转 90 度;
说明
  2.翻转,水平或垂直翻转;
说明
  不管进行多少次旋转或翻转,我们看到都是相同的图形,我们把这样的图形称为"对称图"。下图是操作示例。请注意,图中并不是对称图。

  现在给你一块 \(n×n\) 的方格状透明玻璃和 \(k\) 种颜色的油漆。请你给每个方格都涂上颜色,涂完后得到一幅对称。但是这块玻璃上有 \(m\) 个方格事先已被涂上了颜色,你不能修改它们。

  请问,总共能画出多少种不同的对称图?

【输入格式】

  第一行,三个空格间隔的整数 \(n,m,k\)。
  接下来 \(m\) 行,每行两个整数 \(x\) 和 \(y\),表示坐标为 \((x,y)\) 的格子已被涂上了颜色,注意:坐标为 \(0\sim (n-1)\) 范围的整数。

【输出格式】

  一行,一个整数,表示方案总数,结果可能很大,请输出 \(Mod\ 100 000 007\) 后的结果。

【输入输出样例1】

 Input

3 0 2

 Output

8

【样例1解释】

  有下面8种方案:
说明

【输入输出样例2】

 Input

4 2 3
1 1
3 1

 Output

3

【输入输出样例3】

 Input

10 10 8
2 3
7 1
6 0
1 8
9 2
1 1
8 7
3 3
4 1
8 8

 Output

16777216

【数据说明】

  对于 \(50\%\) 的数据 \(1≤n≤500\),\(0≤m≤100\),\(1≤k≤100000\)
  对于 \(100\%\) 的数据 \(1≤n≤10000\),\(0≤m≤2000\),\(1≤k≤100000\)

【来源】

  Mr.he

信息

ID
2324
难度
9
分类
组合数学 | 其他 | 快速幂分治 点击显示
标签
(无)
递交数
3
已通过
1
通过率
33%
被复制
3
上传者