atcoder#TENKA12019E. Polynomial Divisors

Polynomial Divisors

题目描述

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

输入格式

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

N N aN a_N : : a0 a_0

输出格式

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

题目大意

给定 nn 次多项式 A=a0+a1x+a2x2++anxnA=a_0+a_1x+a_2x^2+\cdots+a_nx^n,问有多少个质数 pp 满足 AA 在任意整数处的点值都是 pp 的倍数,并升序输出。

多项式系数从 nn 次到 00 次给定。

2
7
-7
14
2
7
3
1
4
1
5

0
998244353
998244353

提示

制約

  • 0  N  104 0\ \leq\ N\ \leq\ 10^4
  • ai  109(0 i N) |a_i|\ \leq\ 10^9(0\leq\ i\leq\ N)
  • aN  0 a_N\ \neq\ 0
  • 入力はすべて整数である

Sample Explanation 1

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

Sample Explanation 2

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