# 没有全黑直线的棋盘 参考时间限制:0.5 秒;内存限制:8 MiB。实际时限取目标环境中最慢正式文件的标程中位耗时乘 2,再按 0.5 秒向上取整。见[评测环境](../../../docs/评测环境与性能.md)。 ## 背景故事 山顶的公主觉得普通井字棋的状态太少,便为更大的棋盘制定了新规则:每一行、每一列和两条长对角线都要出现白格。她想知道有多少种棋盘。 ## 形式化问题描述 将 $n\times n$ 棋盘的每个格子染成黑色或白色。每一行、每一列、主对角线和副对角线都必须至少包含一个白格。 主对角线由 $(i,i)$ 组成,副对角线由 $(i,n+1-i)$ 组成,其中 $1\le i\le n$ .只检查这两条长度为 $n$ 的对角线。不同的棋盘位置有区别,旋转或翻转不视为相同方案。 对 $n=0,1,\ldots,20$ ,分别计算方案数模 $P=10^9+7$ 的值。约定空棋盘的方案数为一。 ![二阶棋盘的五个合法方案](assets/example.svg) $n=2$ 时,五个合法方案是全白棋盘和四个恰有一格为黑的棋盘。图中 W 表示白,B 表示黑。 ## 输入格式 没有输入。 ## 输出格式 输出 21 行,依次为 $n=0$ 到 $n=20$ 的答案。 ## 样例 1 ### 输入 ```text ``` ### 输出 ```text 1 1 5 230 38154 23837323 867090702 313119612 923973197 462403141 840792457 982585751 463056058 199254391 8125702 241056829 669505845 625652964 167694588 415136241 104359615 ``` ## 数据范围与保证 没有可变输入,必须输出完整的 21 行答案。 规格调整由 Codex(GPT-6)记录为重新设计:整进程内存限制采用 8 MiB,以容纳参考 Windows 运行环境的基础开销;题目数据规模和计算规则不变。 | 分值比例 | 额外条件 | | --- | --- | | 100% | 无额外条件 | 本题只有一个正式空输入文件,分值为 100%。 [生成说明](tests/README.md)。