题目 30042

单点赋值区间复合(大数组)

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

【题目描述】

给定一个长度为 NN 的线性函数序列 f0,f1,...,fN−1f_0, f_1, ..., f_{N-1}。初始时,对于所有 ii,有 fi(x)=xf_i(x)=x。依次处理 QQ 个查询:

  • 0 $p$ $c$ $d:令 fp←cx+df_p \gets cx + d。
  • 1 $l$ $r$ $x$:输出 fr−1(fr−2(...fl(x))) mod 998244353f_{r-1}(f_{r-2}(...f_l(x))) \bmod 998244353。

【输入】

文本
$N$ $Q$
$\textrm{Query}_0$
$\textrm{Query}_1$
:
$\textrm{Query}_{Q - 1}$

【输出】

对于每个类型为 1 的查询,输出一行其计算结果。

【输入样例】

文本
1000000000 6
0 100 2 3
0 10000 4 5
1 99 100 10
1 1 1000000000 1
0 1000000 6 7
1 1 1000000000 1

【输出样例】

文本
10
25
157

【数据范围】

  • 1≤N≤10000000001 \leq N \leq 1000000000
  • 1≤Q≤5000001 \leq Q \leq 500000
  • 1≤c<9982443531 \leq c < 998244353
  • 0≤d,x<9982443530 \leq d, x < 998244353
  • 0≤p<N0 \leq p < N
  • 0≤l<r≤N0 \leq l < r \leq N

【来源】

Library Checker(yosupo06) point_set_range_composite_large_array

数据下载

题目 30042 的公开数据

正在读取文件列表…

常用命令

题目 30042 的 ROJ 命令

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