만드는 중입니다

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

Nonsense

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

요약
주어진 n, x, y에 대해 각 (a, b) 쌍마다 i에 대한 이항계수와 거듭제곱의 곱의 합을 998244353으로 나눈 나머지로 구합니다.
난이도

어려움10점 중 8점

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

문제

nn, xx, yy가 주어졌을 때, fn,x,y(a,b)f_{n,x,y}(a,b)를 다음 식의 값으로 정의한다. ∑i=an−b(ia)xi−a(n−ib)yn−i−b.\sum_{i=a}^{n-b} \binom{i}{a} x^{i-a} \binom{n-i}{b} y^{n-i-b}. 여기서 (nk)=n!(n−k)! k!\binom{n}{k} = \frac{n!}{(n-k)!\,k!}이다.

보보에게는 qq개의 쌍 (a1,b1),…,(aq,bq)(a_1, b_1), \dots, (a_q, b_q)도 있다. fn,x,y(a1,b1),…,fn,x,y(aq,bq)f_{n,x,y}(a_1, b_1), \dots, f_{n,x,y}(a_q, b_q)의 값을 998244353998244353으로 나눈 나머지를 구하시오.

입력

입력은 여러 개의 테스트 케이스로 이루어지며, 파일의 끝(EOF)에서 끝난다. 각 테스트 케이스의 첫 줄에는 정수 nn, xx, yy, qq가 주어진다. 이어지는 qq개의 줄에는 각각 정수 aia_i와 bib_i가 주어진다.

출력

각 쌍에 대해 fn,x,y(ai,bi)f_{n,x,y}(a_i, b_i)의 값을 998244353998244353으로 나눈 나머지를 한 줄에 하나씩 출력한다.

제한

2≤n≤1092 \leq n \leq 10^9, 0≤x,y<9982443530 \leq x, y < 998244353, 1≤q≤2×1051 \leq q \leq 2 \times 10^5, 1≤ai,bi≤50001 \leq a_i, b_i \leq 5000이며, 각 1≤i≤q1 \leq i \leq q에 대해 ai+bi≤na_i + b_i \leq n이다. 각 입력에서 max⁡(a1,b1,…,aq,bq)\max(a_1, b_1, \dots, a_q, b_q)의 합은 50005000을 넘지 않고, qq의 합은 2×1052 \times 10^5을 넘지 않는다.

예제1

  1. 예제 1

    입력
    3 1 2 2
    1 1
    1 2
    100 2 3 1
    1 1
    
    예상 출력
    6
    1
    866021789