#P14890. Yummy

Yummy

题目描述

给定一个长度为 nn 的序列 ss 和一个正整数 kk,其中 si{1,1}s_i \in \{-1,1\},即 sis_i1-111

我们称一个长度为 nn 的序列 vv 是 Yummy 的,当且仅当序列 vv 中的每个元素均为不大于 k\boldsymbol{k} 的非负整数,且满足:

i=1nsiviki=0\sum_{i=1}^n s_i\cdot v_i\cdot k^i=0

即对于所有不大于 nn 的正整数 iisivikis_i \cdot v_i \cdot k^i 之和为 00

你需要求出不同的长度为 nn 的 Yummy 的序列 vv 的数量。其中,我们称两个长度均为 mm 的序列 a,ba,b 是不同的,当且仅当存在至少一个不大于 mm 的正整数 ii 满足 aibia_i\ne b_i

由于答案可能很大,所以你只需要求出答案对 998244353998244353 取模的结果。

输入格式

本题有多组测试数据

输入文件的第一行输入一个正整数 TT1T1041 \leq T \leq 10^4) 表示测试数据组数。

接下来,对于每一组测试数据:

第一行输入两个正整数 nn2n5×1052 \leq n \leq 5 \times 10^5)和 kk2k1092 \leq k \leq 10^9)。

第二行输入 nn 个整数 sis_isi{1,1}s_i \in \{-1,1\})。

保证对于单个测试点,所有 nn 的和不超过 5×1055\times 10^5

输出格式

对于每组测试数据,输出一行一个正整数表示答案对 998244353998244353 取模的结果。

2
5 2
-1 1 1 -1 -1
8 100
1 1 -1 -1 -1 -1 1 -1
5
16