atcoder#TENKA12019E. Polynomial Divisors

Polynomial Divisors

配点 : 800800

問題文

NN 次の整数係数多項式 f(x)=aNxN+aN1xN1+...+a0f(x)=a_Nx^N+a_{N-1}x^{N-1}+...+a_0 が与えられます。任意の整数 xx に対して ppf(x)f(x) を割り切るような素数 pp をすべて求めてください。

制約

  • 0N1040 \leq N \leq 10^4
  • ai109(0iN)|a_i| \leq 10^9(0\leq i\leq N)
  • aN0a_N \neq 0
  • 入力はすべて整数である

入力

入力は以下の形式で標準入力から与えられる。

NN

aNa_N

::

a0a_0

出力

任意の整数 xx に対して ppf(x)f(x) を割り切るような素数 pp を小さい順にすべて出力せよ。

2
7
-7
14
2
7

2,72,7 は例えば、f(1)=14f(1)=14f(2)=28f(2)=28 を割り切ります。

3
1
4
1
5

条件を満たす素数がない場合もあります。

0
998244353
998244353