U541342 a+b
题目背景
这不是一般的a+b
在线段()上的a+b
题目描述
你有一个线段 $A$,覆盖 $1$ ~ $n$ 的节点
有 $q$ 个操作,每个操作输入$4$个数 $op , a ,b ,c$
* 当 $op=0$ 时,将点 $a$ ~ $b$ 的所有点变成 $c$,输出“ODT”
* 当 $op=1$ 时,将点 $a$ ~ $b$ 的所有点增加 $c$
* 当 $op=2$ 时,将点 $a$ ~ $b$ 的所有点乘上 $c$
* 当 $op=3$ 时,将点 $a$ ~ $b$ 的所有点的和模 $c$
* 当 $op=4$ 时,将点 $a$ ~ $b$ 的所有点的积模 $c$
* 当 $op=5$ 时,将点 $a$ ~ $b$ 的所有奇数点的和模 $c$
* 当 $op=6$ 时,将点 $a$ ~ $b$ 的所有奇数点的积模 $c$
* 当 $op=7$ 时,将点 $a$ ~ $b$ 的所有偶数点的和模 $c$
* 当 $op=8$ 时,将点 $a$ ~ $b$ 的所有偶数点的积模 $c$
* 当 $op=9$ 时,在图 $B$ 中添加边,连接点$a$,$b$,边权为 $c$。
* 当 $op=10$ 时,在图 $B$ 中添加边,连接点$a$,$b$,边权为 $c$ ,然后在图 $B$ 中跑严格次小生成树。
* 当 $op=11$ 时,将点 $a$ ~ $b$ 的所有点增加 $c$ ,然后把图 $B$ 中 ${a,b,c}$ 带回线段中(op=9的逆操作)
* 当 $op=12$ 时,在图 $B$ 中输出拓扑序。
* 当 $op=13$ 时,输出图 $B$ 中最小生成树的$lca$($a$,$b$,$c$)
* 当 $op=14$ 时,回到第$lcm$($a$,$b$,$c$)操作后的的状态。
* 当 $op=15$ 时,回到第$gcd$($a$,$b$,$c$)操作后的的状态。
输入格式
第一行输入 $2$ 个整数,$n$,$q$
接下来一行 $n$ 个整数 $A_i$,表示$A$的初始值
接下来$q$行
每行$4$个整数 $op$,$a$,$b$,$c$
输出格式
对于 $op \neq 1 $ 且 $op \neq 2 且 op\neq 9 $且 $op \neq 10 且 \neq 11 $且 $op 且 \neq 14 且 \neq 1 $且 $op \neq 15$ 的操作 输出答案
说明/提示
$10$ %的数据 ,$q \leq 10,n \leq 10,$保证只有1-8操作
$30$ %的数据 ,$q \leq 10,n \leq 100,$保证只有1-8操作
$50$ %的数据 ,$q \leq 100,n \leq 100,$保证只有1-8,14 ,15操作
$70$ %的数据 ,$q \leq 100,n \leq 1000,$保证只有1-8,14 ,15操作
$75$ %的数据 ,$q \leq 1e7,n \leq 1e8,$保证没有14-15操作
$100$ %的数据 ,$q \leq 1e7,n \leq 1e8,$ 无其他限制