#P9501. 「RiOI-2」likely

    ID: 9989 远端评测题 3000ms 512MiB 尝试: 0 已通过: 0 显示难度NOI/NOI+/CTS 上传者: 标签>数学数论洛谷原创O2优化生成函数快速数论变换 NTT洛谷月赛

「RiOI-2」likely

背景

小 E 喜欢把东西排成环状,而不是一条链。

近些天,她在学校学到了正负号。她把它们放在了环上,作为密码。

然而,她现在已然忘却了,只看到草稿纸上的一个数字。那是什么?

题目描述

对于一个长度为 nn 的仅包含 ±1\pm1 的序列 a0…an−1a_0\dots a_{n-1},我们定义 $S(a, m) = \displaystyle \sum_{k = 0}^{n - 1} \prod_{l = 0}^{m - 1} a_{(k + l) \bmod n}$。

给定 n,m,kn, m, k,求在 2n2^n 个不同的序列 aa 里,试求出有多少不同的 aa 满足 S(a,m)=kS(a, m) = k。

答案对 998, ⁣244, ⁣353998,\!244,\!353 取模。

输入格式

本题有多组数据。

第一行,一个正整数 TT 表示测试数据组数。

接下来 TT 行,每行三个整数,依次表示 n,m,kn, m, k。

输出格式

共 TT 行,每行一个整数,表示一组数据的答案。

9
4 2 0
9 9 -9
9 3 3
20 8 -12
114 5 14
191 9 81
1036 854 104
998244 353 4
2147483 64 7
12
256
108
10000
661235724
741150826
500003636
222931421
404094315
6
8 4 0
12 4 0
16 4 0
20 4 0
24 4 0
28 4 0
176
1728
26160
368000
5413856
80212608
4
6 2 0
10 2 0
9 9 7
9 3 6
0
0
0
0

提示

样例解释

对于第一组样例的第一组数据,不符合要求的只有 a=[1,1,1,1]a=[1,1,1,1],a=[−1,−1,−1,−1]a=[-1,-1,-1,-1],a=[1,−1,1,−1]a=[1,-1,1,-1] 和 a=[−1,1,−1,1]a=[-1,1,-1,1],所以答案为 24−4=122^4-4=12。

对于第一组样例的第二组数据,符合要求的只有 aa 中恰有奇数个 −1-1,所以答案为 28=2562^8=256。

数据规模与约定

本题开启捆绑测试。

Subtask\text{Subtask} 分值 T≤T \leq ∑n≤\sum n \leq m≤m \leq
00 55 11 2020 /
11 1010 55 10510^5 22
22 44
33 1515 / 7×1037\times10^3 /
44 2020 10510^5
55 4040 /

对于所有数据,保证 2≤m≤n≤5×1062 \leq m \leq n \leq 5\times 10^6,0≤∣k∣≤n0 \leq \lvert k\rvert \leq n,1≤T≤101 \leq T \leq 10,∑n≤5×106\sum n\leq 5\times10^6。