#P4588. 数学计算(Math Calculation)

0

数学计算(Math Calculation)

数学计算(Math Calculation)

题目描述

小豆现在有一个数 xx,初始值为 11。小豆有 QQ 次操作,操作有两种类型:

1 m:将 xx 变为 x×mx \times m,并输出 x mod Mx \bmod M

2 pos:将 xx 变为 xx 除以第 pospos 次操作所乘的数(保证第 pospos 次操作一定为类型 1,对于每一个类型 1 的操作至多会被除一次),并输出 x mod Mx \bmod M。

输入格式

一共有 tt 组输入。

对于每一组输入,第一行是两个数字 Q,MQ,M。

接下来 QQ 行,每一行为操作类型 opop,操作编号或所乘的数字 mm(保证所有的输入都是合法的)。

输出格式

对于每一个操作,输出一行,包含操作执行后的 x mod Mx \bmod M 的值。

样例输入 #1

1
10 1000000000
1 2
2 1
1 2
1 10
2 3
2 4
1 6
1 7
1 12
2 7

样例输出 #1

2
1
2
20
10
1
6
42
504
84

数据范围

对于 20%20\% 的数据,1≤Q≤5001 \le Q \le 500。

对于 100%100\% 的数据,1≤Q≤1051 \le Q \le 10^5,t≤5,1<M≤109t \le 5,1 \lt M \le 10^9,0<m≤1090 < m \leq 10^9。

知识点与难度

本题涉及的知识点从属于 CSP-S,难度(CF Rating):1400。


测试点分布

Subtask 分值 测试点编号 说明
0 10 1 样例
1 25 2~8 小规模与边界测试数据
2 30 9~16 中等规模测试数据
3 35 17~25 满规模极限测试数据

出处:原题链接