HM251 区间升降

HM251 区间升降

HM251 区间升降

来源: 第 251 集 常用排序算法-sort

难度: 普及-

时间限制: 1s

空间限制: 64MB

题目描述

常用排序算法里,sort 最常用,可以把一段区间排成升序或降序。同组里还有洗牌、有序合并、首尾反转,本题只做排序。

sort 的前两个参数是起始迭代器和结束迭代器,表示要排的区间。第三个参数可以不填:不填时默认从小到大。若要改规则,第三个参数填谓词(返回布尔值);最快的办法是使用内建函数对象 greater<int>(),得到从大到小。greater 在函数对象头文件里,低版本编译器漏包含可能报错,因此要包含该头文件。sort 本身在算法头文件中。

先把输入序列放进容器,用默认两参数 sort 得到升序并输出;再对同一段用带 greater<int>() 的三参数 sort 得到降序并输出。遍历输出可用 for_each

输入格式

第一行一个整数 \(n\)。

第二行 \(n\) 个整数。当 \(n=0\) 时本行可以是空行。

输出格式

共两行:

  1. 升序后的全部元素;
  2. 降序后的全部元素。

同一行内用单个空格分隔,行末换行。空序列输出空行。

样例

输入 #1

5
1 3 5 2 4

输出 #1

1 2 3 4 5
5 4 3 2 1

输入 #2

1
7

输出 #2

7
7

说明

\(0 \le n \le 1000\),元素绝对值不超过 \(10^9\)。

样例 #1 默认两参数排成 \(1\,2\,3\,4\,5\),再换成 greater<int>() 得到 \(5\,4\,3\,2\,1\)。

信息

ID
1250
难度
(无)
分类
(无)
标签
(无)
递交数
0
已通过
0
通过率
?
上传者