众所周知, “八皇后” 问题是求解在国际象棋棋盘上摆放 $8$ 个皇后,使得两两之间互不攻击的方案数。已经学习了很多算法的小蓝觉得 “八皇后” 问题太简单了,意犹末尽。作为一个国际象棋迷,他想研究在 $N \times M$ 的棋盘上,摆放 $K$ 个马,使得两两之间互不攻击有多少种摆放方案。由于方案数可能很大,只需计算答案除以 $1000000007$ (即 $\left.10^{9}+7\right)$ 的余数。
如下图所示,国际象棋中的马摆放在棋盘的方格内,走 “日” 字, 位于 $(x, y)$ 格的马(第 $x$ 行第 $y$ 列)可以攻击 $(x+1, y+2),(x+1, y-2),(x-1, y+2),(x-1, y-2),(x+2, y+1),(x+2, y-1),(x-2, y+1),(x-2, y-1)$ 共 $8$ 个 格子。
![](https://luogu.oss-cn-hangzhou.aliyuncs.com/upload/vjudge_pic/lanqiao/2022_09_29_68f9131d5c14c1f27e68g-12.jpg)
P8756 [蓝桥杯 2021 省 AB2] 国际象棋 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)