3986:[GESP202409四级] 区间排序
文件提交:无需freopen
内存限制:128 MB
时间限制:1.000 S
评测方式:普通裁判
金币值:
命题人:
提交:155
解决:0
题目描述
## 题目背景
2024 年 9 月 GESP C++ 四级编程第 2 题
## 题目描述
小杨有一个包含 $n$ 个正整数的序列 $a$ 。
小杨计划对序列进行多次升序排序,每次升序排序小杨会选择一个区间 $[l,r]$ $(l \leq r)$ 并对区间内所有数字,即 $a_1,a_{l+1},...,a_r$ 进行升序排序。每次升序排序会在上一次升序排序的结果上进行。
小杨想请你计算出多次升序排序后的序列。
## 输入格式
第一行包含一个正整数 $n$ ,含义如题面所示。
第二行包含 $n$ 个正整数 $a_1,a_2,...,a_n$ ,代表序列。
第三行包含一个正整数 $q$,代表排序次数。
之后 $q$ 行,每行包含两个正整数 $l_i, r_i$ ,代表将区间 $[l_i, r_i]$ 内所有数字进行升序排序。
## 输出格式
输出一行包含 $n$ 个正整数,代表多次升序排序后的序列。
## 样例1
```input1
5
3 4 5 2 1
3
4 5
3 4
1 3
```
```output1
1 3 4 5 2
```
## 样例解释
+ 第一次升序排序后,序列为 $[3,4,5,1,2]$;
+ 第二次升序排序后,序列为 $[3,4,1,5,2]$;
+ 第三次升序排序后,序列为 $[1,3,4,5,2]$;
## 数据范围
对于全部数据,保证有 $1 \leq n \leq 100,1 \leq a_i \leq 100,1 \leq q \leq 100,1 \leq l_i \leq r_i \leq n$。