题目 30180

求线性递推式

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

【题目描述】

给定一个整数序列 a0,…,aN−1a_0, \ldots, a_{N-1}。

请找出长度 d≥0d \ge 0 最小的整数序列 c1,…,cdc_1, \ldots, c_d,满足对于 1≤j≤d1 \le j \le d 有 0≤cj<9982443530 \le c_j < 998244353,并且

ai≡∑j=1dcjai−j(mod998244353)对于d≤i<N.a_i \equiv \sum_{j=1}^d c_j a_{i-j} \pmod{998244353} \quad \text{对于} \quad d \le i < N.

【输入】

输入格式如下:

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

【输出】

输出格式如下:

文本
$d$
$c_1$ $\ldots$ $c_d$

如果有多个能使 dd 最小的答案,输出其中任意一个。

【输入样例】

文本
6
3 4 6 10 18 34

【输出样例】

文本
2
3 998244351

【输入样例2】

文本
6
3 4 6 10 18 36

【输出样例2】

文本
4
3 998244351 3 998244349

【输入样例3】

文本
0

【输出样例3】

文本
0

【输入样例4】

文本
5
0 0 0 0 1

【输出样例4】

文本
5
0 0 0 0 0

【数据范围】

  • 0≤N≤100000 \le N \le 10000
  • 0≤ai<9982443530 \le a_i < 998244353

【来源】

Library Checker(yosupo06) find_linear_recurrence

本题为 special judge(输出任意合法解),暂不可本地评测。

数据下载

题目 30180 的公开数据

正在读取文件列表…

常用命令

题目 30180 的 ROJ 命令

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