「RiOI-2」likely

Luogu
IDLGP9501
Time3000ms
Memory512MB
DifficultyP7
数学数论洛谷原创O2优化生成函数快速数论变换 NTT洛谷月赛
对于一个长度为 $n$ 的仅包含 $\pm1$ 的序列 $a_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, k$,求在 $2^n$ 个不同的序列 $a$ 里,试求出有多少不同的 $a$ 满足 $S(a, m) = k$。 答案对 $998,\!244,\!353$ 取模。 ## Input **本题有多组数据。** 第一行,一个正整数 $T$ 表示测试数据组数。 接下来 $T$ 行,每行三个整数,依次表示 $n, m, k$。 ## Output 共 $T$ 行,每行一个整数,表示一组数据的答案。 [samples] ## Background 小 E 喜欢把东西排成环状,而不是一条链。 近些天,她在学校学到了正负号。她把它们放在了环上,作为密码。 然而,她现在已然忘却了,只看到草稿纸上的一个数字。那是什么? ## Note ### 样例解释 对于第一组样例的第一组数据,不符合要求的只有 $a=[1,1,1,1]$,$a=[-1,-1,-1,-1]$,$a=[1,-1,1,-1]$ 和 $a=[-1,1,-1,1]$,所以答案为 $2^4-4=12$。 对于第一组样例的第二组数据,符合要求的只有 $a$ 中恰有奇数个 $-1$,所以答案为 $2^8=256$。 ### 数据规模与约定 **本题开启捆绑测试。** | $\text{Subtask}$ | 分值 | $T \leq$ | $\sum n \leq$ | $m \leq$ | | :-: | :-: | :-: | :-: | :-: | | $0$ | $5$ | $1$ | $20$ | / | | $1$ | $10$ | $5$ | $10^5$ | $2$ | | $2$ | $10$ | $5$ | $10^5$ | $4$ | | $3$ | $15$ | / | $7\times10^3$ | / | | $4$ | $20$ | / | $10^5$ | / | | $5$ | $40$ | / | / | / | 对于所有数据,保证 $2 \leq m \leq n \leq 5\times 10^6$,$0 \leq \lvert k\rvert \leq n$,$1 \leq T \leq 10$,$\sum n\leq 5\times10^6$。
Samples
Input #1
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
Output #1
12
256
108
10000
661235724
741150826
500003636
222931421
404094315
Input #2
6
8 4 0
12 4 0
16 4 0
20 4 0
24 4 0
28 4 0
Output #2
176
1728
26160
368000
5413856
80212608
Input #3
4
6 2 0
10 2 0
9 9 7
9 3 6
Output #3
0
0
0
0
API Response (JSON)
{
  "problem": {
    "name": "「RiOI-2」likely",
    "description": {
      "content": "对于一个长度为 $n$ 的仅包含 $\\pm1$ 的序列 $a_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, k$,求在 $2^n$ 个不同的序列 $a$ 里,试求出有多少不同的 $a$ 满足 $S(a,",
      "description_type": "Markdown"
    },
    "platform": "Luogu",
    "limit": {
      "time_limit": 3000,
      "memory_limit": 524288
    },
    "difficulty": {
      "LuoguStyle": "P7"
    },
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "LGP9501"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "对于一个长度为 $n$ 的仅包含 $\\pm1$ 的序列 $a_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\n给定 $n, m, k$,求在 $2^n$ 个不同的序列 $a$ 里,试求出有多少不同的 $a$ 满足 $S(a,...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments