#aBC248F. [ABC248F] Keep Connect

[ABC248F] Keep Connect

AT_abc248_f [ABC248F] Keep Connect

题目描述

给定一个整数 N2N \geq 2 和一个素数 PP
考虑如下图所示的一个有 2N2N 个顶点、(3N2)(3N-2) 条边的图 GG

更具体地说,顶点依次编号为 1,2,,2N1, 2, \ldots, 2N,边依次编号为 1,2,,3N21, 2, \ldots, 3N-2,每条边连接的顶点如下:

  • 对于 1iN11 \leq i \leq N-1,边 ii 连接顶点 ii 和顶点 i+1i+1
  • 对于 1iN11 \leq i \leq N-1,边 (N1+i)(N-1+i) 连接顶点 N+iN+i 和顶点 N+i+1N+i+1
  • 对于 1iN1 \leq i \leq N,边 (2N2+i)(2N-2+i) 连接顶点 ii 和顶点 N+iN+i

对于 i=1,2,,N1i=1,2,\ldots,N-1,请解决以下问题:

GG3N23N-2 条边中恰好去除 ii 条边,使得去除后的图仍然连通。请计算这样的方案数,并对 PP 取模。

输入格式

输入为一行,包含两个整数 NNPP

输出格式

输出 N1N-1 个整数,空格分隔。第 kk 个整数表示 i=ki=k 时的答案。

输入输出样例 #1

输入 #1

3 998244353

输出 #1

7 15

输入输出样例 #2

输入 #2

16 999999937

输出 #2

46 1016 14288 143044 1079816 6349672 29622112 110569766 330377828 784245480 453609503 38603306 44981526 314279703 408855776

说明/提示

限制条件

  • 2N30002 \leq N \leq 3000
  • 9×108P1099 \times 10^8 \leq P \leq 10^9
  • NN 是整数。
  • PP 是素数。

样例解释 1

N=3N=3 为例,恰好去除 11 条边且去除后图仍然连通的方案有如下 77 种。

恰好去除 22 条边且去除后图仍然连通的方案有如下 1515 种。

因此,对 P=998244353P=998244353 取模后,依次输出 771515

样例解释 2

请注意,输出时需要对 PP 取模。

由 ChatGPT 4.1 翻译