#P12445. [COTS 2025] 数好图 / Promet

[COTS 2025] 数好图 / Promet

题目描述

给定正整数 NN 和素数 PP

K=0,1,,N\forall K=0,1,\ldots,N,求出满足以下条件的简单有向图的数量:

  • 图中仅包含 iji\to j1i<jN1\le i\lt j\le N)的边;
  • 满足以下条件的点 uu 恰好有 KK 个:
    • 存在 1u1\to uuNu\to N 的路径。

只需要输出答案对 PP 取模后的结果。

输入格式

NN PP

输出格式

输出一行 (N+1)(N+1) 个非负整数,第 ii 个数表示 K=i1K=i-1 时的答案。

2 1000000007
1 0 1
3 1000000007
3 0 3 2
5 1000000007
183 0 183 286 250 122

提示

样例解释

样例 22 解释:

K=0K=0 的时候,根据定义,下面三个边集合法:

  • \varnothing
  • {(1,2)}\{(1, 2)\}
  • {(2,3)}\{(2, 3)\}

K=2K=2 时,合法的边集:

  • {(1,3)}\{(1, 3)\}
  • {(1,3),(1,2)}\{(1, 3), (1, 2)\}
  • {(1,3),(2,3)}\{(1, 3), (2, 3)\}

K=3K=3 时,合法的边集:

  • {(1,2),(2,3)}\{(1, 2), (2, 3)\}
  • {(1,2),(1,3),(2,3)}\{(1, 2), (1, 3), (2, 3)\}

数据范围

  • 2N20002\le N\le 2\,000
  • 108P109+10010^8\le P\le 10^9+100
  • PP 是素数。

子任务

子任务 00 为样例。

子任务编号 NN\le 得分
11 77 44
22 1818 77
33 5050 2323
44 100100 1313
55 300300 1818
66 20002\,000 3535