A105402.皓仔的数位排序
普及-
官方
通过率:0%
时间限制:1.00s
内存限制:128MB
题目描述
皓仔在整理一份成绩单数据。每个数据都是一个整数,他想按一种特殊规则把数组排好序。
排序规则如下:
- 位数为奇数的数字放在左边;
- 位数为偶数的数字放在右边;
- 左边(位数为奇数)的数字按数值升序排列;
- 右边(位数为偶数)的数字按数值降序排列。
请你输出按上述规则排序后的数组。
输入格式
第一行一个整数 n,表示数组长度。
第二行 n 个整数 a1,a2,…,an,表示数组元素。
输出格式
一行输出 n 个整数,表示排序后的数组元素,数字之间用一个空格分隔。
输入输出样例
输入#1
6 1 12 5 100 9 88
输出#1
1 5 9 100 88 12
输入#2
4 2 13 0 5
输出#2
0 2 5 13
说明/提示
【样例解释】
在样例 1 中:
- 位数为奇数的数:1,5,100,9,升序后为 1,5,9,100;
- 位数为偶数的数:12,88,降序后为 88,12;
- 先输出位数为奇数部分,再输出位数为偶数部分,得到最终序列。
在样例 2 中:
- 位数为奇数的数:2,0,5,升序后为 0,2,5;
- 位数为偶数的数:13,降序后为 13;
- 先输出位数为奇数部分,再输出位数为偶数部分,得到最终序列。
【数据范围】
对于所有测试数据保证: 1≤n≤2×105, 0≤ai≤109。