만드는 중입니다

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

수영장

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

요약
각 칸이 x/y 확률로 안전한 N×1001 격자에서, 바닥에 닿은 가장 큰 안전 직사각형의 넓이가 정확히 K가 될 확률을 구합니다.
난이도

어려움10점 중 8점

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

문제

수영장은 너비 NN 미터, 높이 1001 미터인 직사각형 격자로 나타낸다. 격자의 아래쪽 변은 해변이다. 격자의 각 1m×1m1m \times 1m 정사각형 칸은 바다 한 단위를 뜻한다.

수영할 수 있는 안전 구역은 다음 조건을 만족해야 한다.

  • 구역 안의 모든 칸이 안전하다.
  • 구역은 직사각형이다.
  • 구역이 아래쪽 변(해변)에 닿아 있다.

각 칸은 독립적으로 확률 qq로 안전하고, 확률 1−q1-q로 안전하지 않다. 수영할 수 있는 가장 큰 안전 구역의 넓이가 정확히 KK일 확률을 구하라.

입력

한 줄에 양의 정수 네 개 N,K,x,yN,K,x,y가 주어진다. 단, 1≤x<y<9982443531 \leq x < y < 998244353이다. 확률 qq는 xy\frac{x}{y}이다.

출력

답을 998244353으로 나눈 나머지를 한 줄에 출력한다. 답이 기약분수 ab\frac{a}{b}(aa와 bb는 서로소)라면, bx≡a mod 998244353bx \equiv a \bmod 998244353을 만족하고 0≤x<9982443530 \leq x < 998244353인 xx를 출력한다.

제한

  • 1≤N≤1091 \leq N \leq 10^9
  • 1≤K≤10001 \leq K \leq 1000

힌트

xp−1≡1 mod px^{p-1} \equiv 1 \bmod p이다. 여기서 pp는 소수이고, x∈[1,p)x \in [1,p)이다.

예제1

  1. 예제 1

    입력
    10 5 1 2
    
    예상 출력
    342025319