题目 30157

狄利克雷逆与前缀和

查看题解 ↗GitHub ↗如何评测
题号
30157
时间限制
10000 ms
内存限制
1024 MB
标签
数学数论
来源
Library Checker (yosupo06) - dirichlet_inverse_and_prefix_sums

【题目描述】

有 TT 组测试数据。

给定正整数 NN,定义 QN={⌊Nx⌋ ⁣:x∈Z,1≤x≤N}Q_N=\lbrace {\lfloor {N \over x} \rfloor \colon x \in \mathbb{Z}, 1 \leq x \leq N} \rbrace。

把 QNQ_N 的元素按升序排列,得到的序列记为 (a0,a1,…,ak−1)(a_0,a_1,\ldots,a_{k-1})。

对于序列 f ⁣:N→F998244353f \colon \mathbb{N} \to \mathbb{F} _ {998244353},定义到每个 $ x \in Q_N $ 的累计和

fx=∑n=1xf(n) f_x = \sum_{n=1}^x f(n)

在此基础上,令 gg 为 ff 关于狄利克雷卷积的逆。也就是说,∑ij=nf(i)g(j)=δ1,n\sum_{ij=n}f(i)g(j)=\delta_{1,n} 成立。对每个 $ x \in Q_N $,求出累计和

gx=∑n=1xg(n)∈F998244353 g_x=\sum_{n=1}^x g(n) \in \mathbb{F}_{998244353}

【输入】

文本
$T$
$case_1$
$\vdots$
$case_T$

每组测试数据按如下格式给出。

文本
$N$
$f_{a_0}$ $f_{a_1}$ $\ldots$ $f_{a_{k-1}}$

【输出】

文本
$g_{a_0}$ $g_{a_1}$ $\ldots$ $g_{a_{k-1}}$

【输入样例】

文本
1
100
1 2 3 4 5 6 7 8 9 10 11 12 14 16 20 25 33 50 100

【输出样例】

文本
1 0 998244352 998244352 998244351 998244352 998244351 998244351 998244351 998244352 998244351 998244351 998244351 998244352 998244350 998244351 998244350 998244350 1

【输入样例2】

文本
1
10
159697193 191118568 288782461 424555303 827942315

【输出样例2】

文本
835371342 776106831 841228419 539675829 463901545

【数据范围】

  • 1≤N≤10000000000001 \leq N \leq 1000000000000
  • 0≤fx<9982443530 \leq f_x < 998244353
  • f1≠0f_1\neq 0
  • 若 T>1T>1,则 T=10000T=10000,且对每个 N=1,2,…,10000N=1,2,\ldots,10000 恰有一组测试数据。

【来源】

Library Checker(yosupo06) dirichlet_inverse_and_prefix_sums

数据下载

题目 30157 的公开数据

正在读取文件列表…

常用命令

题目 30157 的 ROJ 命令

以下命令默认使用全局安装的 ROJ Skill,请在终端中直接执行;如果修改过 AGENT_HOME,请将命令中的 ~/.agents 替换为对应目录。