만드는 중입니다

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

점프 점프 점프

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

요약
0에서 출발해 k개의 벡터 중 하나를 무작위로 골라 계속 더하며 이동할 때, 각 x마다 점 (x, x)에 처음 도착할 확률을 구합니다.
난이도

어려움10점 중 9점

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

문제

토끼가 평면의 점 (0,0)(0, 0)에서 출발한다. kk개의 서로 다른 벡터 (dx1,dy1),(dx2,dy2),…,(dxk,dyk)(dx_1, dy_1), (dx_2, dy_2), \ldots, (dx_k, dy_k)가 주어진다. 매 단계마다 토끼는 이 벡터 중 하나를 같은 확률로 골라 현재 점 (x,y)(x, y)에서 (x+dxc,y+dyc)(x + dx_c, y + dy_c)로 뛴다. 모든 선택은 서로 독립이다.

x≥1x \geq 1인 모든 격자점 (x,x)(x, x)에는 함정이 있다. 토끼가 함정에 뛰어들면 그 자리에 갇혀 더 이상 움직일 수 없다.

1≤x≤n1 \leq x \leq n인 각 xx에 대해, 토끼가 격자점 (x,x)(x, x)에서 함정에 갇힐 확률을 출력하라.

입력

첫 번째 줄에 두 정수 nn과 kk가 주어진다 (1≤n≤1051 \leq n \leq 10^5, 1≤k≤161 \leq k \leq 16).

이어지는 kk개의 줄에는 각각 두 정수 dxidx_i와 dyidy_i가 주어진다 (0≤dxi,dyi≤30 \leq dx_i, dy_i \leq 3). 모든 벡터는 서로 다르다.

출력

nn개의 줄을 출력하라. xx번째 줄에는 토끼가 격자점 (x,x)(x, x)에서 함정에 갇힐 확률을 출력한다.

확률은 분수 A/BA / B로 나타낼 수 있고, BB는 998244353과 서로소임이 보장된다. A⋅B−1 mod 998244353A \cdot B^{-1} \bmod 998244353을 출력하라.

힌트

확률은 차례로 12,18,116,5128,7256\frac{1}{2}, \frac{1}{8}, \frac{1}{16}, \frac{5}{128}, \frac{7}{256}이다.

예제1

  1. 예제 1

    입력
    5 3
    0 0
    0 1
    1 0
    
    예상 출력
    499122177
    873463809
    935854081
    959250433
    970948609