#AT2059. G - Range Sort Query
G - Range Sort Query
当前没有测试数据。
G - 区间排序查询
分数:$600$ 分
问题描述
给定一个排列 $P=(P_1,P_2,\ldots,P_N)$,以及一个整数 $X$。
此外,给定 $Q$ 个查询。 第 $i$ 个查询表示为一个三元组 $(C_i,L_i,R_i)$,每个查询对排列 $P$ 执行以下操作。
- 如果 $C_i=1$:对 $P_{L_i},P_{L_i+1},\ldots,P_{R_i}$ 排序,按升序排列。
- 如果 $C_i=2$:对 $P_{L_i},P_{L_i+1},\ldots,P_{R_i}$ 排序,按降序排列。
在按给定顺序执行了所有查询之后的最终排列 $P$ 中,找到满足 $P_i=X$ 的 $i$。
约束
- $1 \leq N \leq 2\times 10^5$
- $1 \leq Q \leq 2\times 10^5$
- $1 \leq X \leq N$
- $(P_1,P_2,\ldots,P_N)$ 是 $(1,2,\ldots,N)$ 的一个排列。
- $1 \leq C_i \leq 2$
- $1 \leq L_i \leq R_i \leq N$
- 输入中的所有值均为整数。
输入
输入从标准输入中按以下格式给出:
输出
输出结果。
5 2 1
1 4 5 2 3
1 3 5
2 1 3
3
初始排列为 $P=[1,4,5,2,3]$。 查询将其变为:
- 第 $1$ 个查询将第 $3$ 到第 $5$ 个元素按升序排列,得到 $P=[1,4,2,3,5]$。
- 第 $2$ 个查询将第 $1$ 到第 $3$ 个元素按降序排列,得到 $P=[4,2,1,3,5]$。
在最终的排列中,有 $P_3=1$,因此应该输出 $3$。
7 3 3
7 5 3 1 2 4 6
1 1 7
2 3 6
2 5 7
7
最终排列为 $P=[1,2,6,5,7,4,3]$。