Jabby 要闯一个迷宫,这个迷宫是环形的,点的编号是 [0,Out],第 i 个点和第 (i+1)mod(Out+1) 个点有道路,每条路都是不同的。
Jabby 现在在 0 号点。
迷宫有 T 的时间限制。Jabby 必须在 T 个单位时间内走出迷宫。
Jabby 有一个行走序列 A0,A1,A2,…,An。如果 Jabby 现在在 now 号位置,那么他可以随意选择行走序列中的走法,沿着道路向下走 Ai(i∈[1,n]) 个位置。这要耗费一个单位时间,即走到 (now+A)mod(Out+1)。
在 Out 处有一个出口,出口与终点有若干条路。这个出口每 k 秒打开一次,第 0 秒的时候,出口是打开的。若门在第 x 秒打开,则出口到终点的路共有 C 条不同的路。
Jabby 想知道,在 T 秒内,共有几种方案走出迷宫?
两种方法不同,只需在某一时刻的选择的走法不同。
请输出答案对 998244353(=7×17×223+1,是质数)取模的结果。
输入格式
第一行四个整数 n,T,k,Out,含义如题。
接下来 n 行,每行一个整数,表示 Ai。
输出格式
一个整数,输出方案数。
3 5 1 3
1
2
3
256
数据规模与提示
对于 100% 的数据,
-
K,N≤105,Ai≤109
-
输出为大于 N 的第一个 out 满足 out+1 是 2 的整数幂的数,即:
out+1=2m(m∈N)
-
每个 Ai 满足 Ai<out 且互不相同。
-
K 是一个素数或 1,且 K≤10。
-
K 整除 p−1,即:
K∣(p−1)