loj#P189. q-整式递推

q-整式递推

题目描述

这是一道模板题。

对于无限数列 {a}n=0\{a\}_{n=0}^\infty,已知 nm\forall n \ge m 都满足

k=0mankPk(qn)=0\sum_{k=0}^m a_{n-k} P_k(q^n) = 0

其中 PkP_k 为不超过 dd 次的多项式,qq 是给定的常数。
给定所有 PkP_k 的系数,和 {ai}i=0m1\{ a_i \}_{i=0}^{m-1} ,求 ana_n

答案对 998244353998244353 取模。

输入格式

第一行四个正整数 n,m,d,qn,m,d,q
第二行 mm 个非负整数,表示 {ai}i=0m1\{ a_i \}_{i=0}^{m-1}
接下来 m+1m+1 行,每行 d+1d+1 个非负整数;第 k+3k+3 行由低到高地给出 PkP_k 的系数。

输出格式

输出一行一个整数,表示答案。

9981274 6 5 3
1 1 4 5 1 4
1 4 7 2 4 2
2 0 8 8 9 2
3 6 9 3 4 1
7 8 2 0 2 3
4 1 3 2 1 5
9 2 3 2 4 8
7 5 2 0 2 3
34764612

数据范围与提示

对于 30%30\% 的数据,1n1061\le n \le 10^6
对于 100%100\% 的数据,1m,d61\le m,d \le 61n6×1081 \le n \le 6 \times 10^8

所有输入均不超过 6×1086 \times 10^8,保证 $\forall k \in [m,n] \cap \mathbb Z \text{ s.t. } P_0(q^k) \not \equiv 0 \pmod{998244353}$