다항함수의 미분과 나머지

시간 제한1초메모리 제한1024 MB

요약
k번 미분한 다항식의 계수가 주어진 나머지를 만족하도록 하는 n차 다항식 계수열의 개수를 세고 사전 순으로 가장 작은 것을 찾는다.
난이도

보통10점 중 7점

유형
수학, 정수론, 조합론, 구현
정답자
아직 제출이 없습니다

문제

66개의 정수 nn, dd, mm, kk, aa, bb와 정수열 s=(s_0,s_1,⋯ ,s_d)s=(s\_0, s\_1, \cdots, s\_d)가 주어진다.

다음을 모두 만족하는 모든 정수열 c=(c_0,c_1,⋯ ,c_n)c=(c\_0, c\_1, \cdots, c\_n)들의 집합을 AA라 하자.

  • 모든 정수 ii (0≤i≤n0 \le i \le n)에 대해 a≤c_i≤ba \le c\_i \le b

  • 다음을 모두 만족하는 함수 f ⁣:R→Rf \colon \mathbb R \to \mathbb R와 정수열 r=(r_0,r_1,⋯ ,r_d)r=(r\_0, r\_1, \cdots, r\_d)가 존재한다.

    • 모든 실수 tt에 대해 f(t)=∑_i=0nc_itif(t) = \sum\_{i=0}^{n} c\_i t^i
    • 모든 실수 tt에 대해 f(k)(t)=∑_j=0dr_jtjf^{(k)}(t) = \sum\_{j=0}^{d} r\_j t^j
    • 모든 정수 jj (0≤j≤d0 \le j \le d)에 대해 r_j mod m=s_jr\_j \bmod m = s\_j

집합 AA의 크기와 AA의 원소 중 사전 순으로 가장 작은 원소를 구해 보자.

입력

첫 번째 줄에 66개의 정수 nn, dd, mm, kk, aa, bb가 공백으로 구분되어 주어진다.

두 번째 줄에 d+1d+1개의 정수 s_0s\_0, s_1s\_1, ⋯\cdots, s_ds\_d가 공백으로 구분되어 주어진다.

출력

첫 번째 줄에 ∣A∣ mod (109+7)|A| \bmod (10^9+7)의 값을 출력한다.

만약 AA가 공집합이 아니라면, AA에 속하는 정수열 중 사전 순으로 가장 작은 것을 pp라 할 때, 두 번째 줄에 n+1n+1개의 정수 p_0p\_0, p_1p\_1, ⋯\cdots, p_np\_n을 공백으로 구분하여 출력한다.

제한

  • 0≤n≤1050 \le n \le 10^5
  • 0≤d≤1050 \le d \le 10^5
  • 1≤m≤1091 \le m \le 10^9
  • 0≤k≤1090 \le k \le 10^9
  • 0≤a≤b≤1090 \le a \le b \le 10^9
  • 모든 정수 jj (0≤j≤d0 \le j \le d)에 대해 0≤s_j<m0 \le s\_j < m

힌트

  • f(k)f^{(k)}는 함수 ff를 kk번 미분해서 얻은 함수이다.

    • f(0)=ff^{(0)} = f
    • 모든 양의 정수 kk에 대해 f(k)=(f(k−1))′f^{(k)} = (f^{(k-1)})'
  • 모든 실수 xx에 대해 x0=1x^0=1로 본다.

  • R\mathbb R는 실수 전체의 집합이다.

  • x mod yx \bmod y는 xx를 yy로 나눈 나머지이다.

  • ∣A∣|A|는 집합 AA의 크기이다.

  • 정수열 x=(x_0,x_1,⋯ ,x_l)x=(x\_0, x\_1, \cdots, x\_l)가 정수열 y=(y_0,y_1,⋯ ,y_l)y=(y\_0, y\_1, \cdots, y\_l)보다 사전 순으로 작다는 것은 다음을 모두 만족하는 정수 hh (0≤h≤l0 \le h \le l)가 존재한다는 의미이다.

    • x_h<y_hx\_h < y\_h
    • 모든 정수 ii (0≤i<h0 \le i < h)에 대해 x_i=y_ix\_i=y\_i

예제2

  1. 예제 1

    입력
    3 2 5 1 1 4
    2 4 1
    
    예상 출력
    4
    1 2 2 2
    
  2. 예제 2

    입력
    2 4 4 9 4 4
    0 3 1 0 3
    
    예상 출력
    0