luogu#P8747. [蓝桥杯 2021 省 B] 双向排序

[蓝桥杯 2021 省 B] 双向排序

题目描述

给定序列 $\left(a_{1}, a_{2}, \cdots, a_{n}\right)=(1,2, \cdots, n)$,即 ai=ia_{i}=i

小蓝将对这个序列进行 mm 次操作,每次可能是将 a1,a2,,aqia_{1}, a_{2}, \cdots, a_{q_{i}} 降序排列,或者将 aqi,aqi+1,,ana_{q_{i}}, a_{q_{i}+1}, \cdots, a_{n} 升序排列。

请求出操作完成后的序列。

输入格式

输入的第一行包含两个整数 n,mn, m,分别表示序列的长度和操作次数。

接下来 mm 行描述对序列的操作,其中第 ii 行包含两个整数 pi,qip_{i}, q_{i} 表示操作类型和参数。

pi=0p_{i}=0 时,表示将 a1,a2,,aqia_{1}, a_{2}, \cdots, a_{q_{i}} 降序排列;

pi=1p_{i}=1 时,表示将 aqi,aqi+1,,ana_{q_{i}}, a_{q_{i}+1}, \cdots, a_{n} 升序排列。

输出格式

输出一行,包含 nn 个整数,相邻的整数之间使用一个空格分隔,表示操作完成后的序列。

3 3
0 3
1 2
0 2
3 1 2

提示

【样例说明】

原数列为 (1,2,3)(1,2,3)

第 1 步后为 (3,2,1)(3,2,1)

第 2 步后为 (3,1,2)(3,1,2)

第 3 步后为 (3,1,2)(3,1,2)。与第 2 步操作后相同, 因为前两个数已经是降序了。

【评测用例规模与约定】

对于 30%30 \% 的评测用例, n,m1000n, m \leq 1000;

对于 60%60 \% 的评测用例, n,m5000n, m \leq 5000;

对于所有评测用例, $1 \leq n, m \leq 10^5,0 \leq p_{i} \leq 1,1 \leq q_{i} \leq n$ 。

蓝桥杯 2021 第一轮省赛 B 组 I 题。