2143: 区间排序(2024年9月GESP C++四级试题)

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:57 Solved:30

Description

小杨有一个包含n个正整数的序列a。
小杨计划对序列进行多次升序排序,每次升序排序小杨会选择一个区间[l, r] (l<=r)并对区间内所有数字,即
al,al+1,al+2,....ar 进行升序排序。每次升序排序会在上一次升序排序的结果上进行。
小杨想请你计算出多次升序排序后的序列。

Input

第一行包含一个正整数n,含义如题面所示。
第二行包含n个正整数a1,a2,a3.....an,代表序列。
第三行包含一个正整数q,代表排序次数。
之后q行,每行包含两个正整数 li,ri,代表将区间[li,ri] 内所有数字进行升序排序。

Output

输出一行包含n个正整数,代表多次升序排序后的序列。

Sample Input Copy

5
3 4 5 2 1
3
4 5
3 4
1 3

Sample Output Copy

1 3 4 5 2

HINT

第一次升序排序后,序列为[ 3 4 5 1 2];
第二次升序排序后,序列为[ 3 4 1 5 2];
第三次升序排序后,序列为[ 1 3 4 5 2];


对于全部数据,保证有1<=n<=100, 1<=ai<=100, 1<=q<=100, 1<=li<=ri<=n.

Source/Category