题目 30046

队列(带全体复合操作)

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

【题目描述】

有一个初始为空的线性函数序列 f=()f = ()。请处理 QQ 个查询。

  • 0 $a$ $b$:在序列 ff 的末尾添加一个线性函数 λx.ax+b\lambda x. ax + b。
  • 1:删除序列 ff 开头的线性函数。
  • 2 $x$:设 f=(fl,…,fr−1)f = (f_{l}, \dots, f_{r - 1}),输出 fr−1(fr−2(…(fl(x))… )) mod 998244353f _ {r - 1}(f _ {r - 2}(\dots (f _ l(x)) \dots)) \bmod 998244353。如果 f=()f = (),则输出 xx。

【输入】

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

【输出】

对每个 2 $x$ 查询,在一行输出一个整数,表示该查询的答案。

【输入样例】

文本
6
0 4 5
2 3
0 2 1
2 2
1
2 3

【输出样例】

文本
17
27
7

【输入样例2】

文本
1
2 1333

【输出样例2】

文本
1333

【数据范围】

  • 1≤Q≤500,0001 \leq Q \leq 500,000
  • 1≤a<9982443531 \leq a \lt 998244353
  • 0≤b,x<9982443530 \leq b, x \lt 998244353
  • 当查询 11 到来时,序列 ff 不为空。

【来源】

Library Checker(yosupo06) queue_operate_all_composite

数据下载

题目 30046 的公开数据

正在读取文件列表…

常用命令

题目 30046 的 ROJ 命令

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