만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

지수와 로그, 테일러 다항식(Small)

시간 제한1.5초메모리 제한512 MB

요약
상수항이 0인 다항식 P(x)가 주어졌을 때, ln(1+P(x))와 e^P(x)-1의 n차 테일러 다항식 계수를 998244353으로 나눈 나머지로 구합니다.
난이도

보통10점 중 5점

유형
수학, 동적 계획법
정답자
아직 제출이 없습니다

문제

함수 f(x)f(x)의 x=0x=0에서의 nn차 테일러 다항식은 다음과 같이 정의한다.

Tnf(x):=∑i=0nf(i)(0)i!xiT_n f(x) := \sum_{i=0}^{n} \frac{f^{(i)}(0)}{i!} x^i

차수가 nn 이하이고 상수항이 00인 다항식 P(x)P(x)가 a0+a1x+⋯+anxna_0 + a_1x + \cdots + a_nx^n의 꼴로 주어진다. ln⁡(1+P(x))\ln(1+P(x))와 eP(x)−1e^{P(x)}-1의 nn차 테일러 다항식을 각각 계산한다.

입력

첫째 줄에 정수 nn이 주어진다. (1≤n≤5121 \le n \le 512)

둘째 줄에 n+1n+1개의 정수 a0,a1,⋯ ,ana_0, a_1, \cdots, a_n이 주어진다. (0≤ai<9982443530 \le a_i < 998244353, a0=0a_0 = 0)

출력

첫째 줄에 ln⁡(1+P(x))\ln(1+P(x))의 nn차 테일러 다항식의 계수를 차수가 오름차순이 되도록 n+1n+1개의 정수로 출력한다.

둘째 줄에 eP(x)−1e^{P(x)}-1의 nn차 테일러 다항식의 계수를 차수가 오름차순이 되도록 n+1n+1개의 정수로 출력한다.

계수는 모두 유리수이므로 기약분수 ab\frac{a}{b}로 나타낼 수 있다. 각 계수마다 a×b998244351 mod 998244353a \times b^{998244351} \bmod 998244353을 출력한다.

예제2

  1. 예제 1

    입력
    3
    0 6 0 0
    
    예상 출력
    0 6 998244335 72
    0 6 18 36
    
  2. 예제 2

    입력
    4
    0 998244352 499122179 831870289 291154613
    
    예상 출력
    0 998244352 2 998244350 4
    0 998244352 3 166374051 374341652