#abc248f. [abc248_f]Keep Connect

[abc248_f]Keep Connect

题目描述

给定一个大于或等于2的整数NN和一个素数PP
考虑图GG,其中有2N2N个顶点和(3N2)(3N-2)条边,如下图所示。

具体来说,边连接如下的顶点,其中顶点标记为顶点11,顶点22,等等,边标记为边11,边22,等等,总共有(3N2)(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,解决以下问题。

找出删除恰好iiGG3N23N-2条边中的方式,使得剩余的图仍然是连通的,对PP取模后的结果。

约束条件

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

输入

输入数据从标准输入获得,格式如下:

NN PP

输出

输出N1N-1个整数,第ii个整数是当i=ki=k时的答案,数字之间用空格分隔。


示例输入 1

3 998244353

示例输出 1

7 15

N=3N=3的情况下,有77种方式删除恰好一条边,使得剩余的图仍然是连通的。

1515种方式删除恰好两条边,使得剩余的图仍然是连通的。

因此,应该按顺序打印这些数字对P=998244353P=998244353取模后的结果:771515


示例输入 2

16 999999937

示例输出 2

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

请确保对PP取模后打印这些数字。