对序列执行多次区间升序排序并输出最终结果

dq215048 程序题 共 个子题

时间限制

1.0 s

内存限制

512.0 MB

题面描述

小杨有一个包含 $n$ 个正整数的序列 $a$。 小杨计划对序列进行多次升序排序,每次升序排序会选择一个区间 $[l, r]~(l \leq r)$ 并对区间内所有数字 $a_l, a_{l+1}, \dots, a_r$ 进行升序排序。每次升序排序会在上一次升序排序的结果上进行。 请你计算出多次升序排序后的序列。

输入格式

  1. 第一行包含一个正整数 $n$,含义如题面所示。
  2. 第二行包含 $n$ 个正整数 $a_1, a_2, \dots, a_n$,代表初始序列。
  3. 第三行包含一个正整数 $q$,代表排序次数。
  4. 之后 $q$ 行,每行包含两个正整数 $l_i, r_i$,代表将区间 $[l_i, r_i]$ 内所有数字进行升序排序。

输出格式

输出一行包含 $n$ 个正整数,代表多次升序排序后的序列,数字之间用空格分隔。

输入样例

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

输出样例

1 3 4 5 2

样例解释

  1. 第一次升序排序后,序列为 $[3, 4, 5, 1, 2]$;
  2. 第二次升序排序后,序列为 $[3, 4, 1, 5, 2]$;
  3. 第三次升序排序后,序列为 $[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$。

本题为编程题,提交代码并运行通过测试点后判分。

正在加载题目数据…
已答 /
子题
该题型需在试卷/作业中作答,单题练习暂不支持
答案解析
提交记录
共 条 仅展示自由练习提交
正在加载提交记录…
讨论
发布
登录后参与讨论 立即登录
发布讨论需先绑定并验证手机号 去绑定手机号
加载中…
我
我
回复 @
回复 @
发送
还没有人讨论,来发表第一条吧