题目详情
返回题库题目描述
给定n$(1 \leq n \leq 5 \times 10^5)$个正整数,第i个数字为$a_i(1 \leq a_i \leq 10^9)$。 请对他们进行排序。
其中排序$a_i$和$a_j$(i<j)的规则为:如果$a_i$这个数字出现次数和$a_j$的出现次数相同,则$a_i$排在前面。 否则把出现次数多的排在前面。
输入描述
第一行一个正整数n表示要排序的数字数量。
接下来一行n个正整数表示要排序的数字。
对于所有数据,$1 \leq n \leq 5 \times 10^5$ , $ 1 \leq a_i \leq 10^9$。 每个测试点的具体限制见下表:
| 测试点编号 | 约束 |
|---|---|
| 1 | 每个数字只出现一次 |
| 2-3 | n=5且只有两种数字 |
| 4-7 | $n\le1000$ |
| 8-11 | $a_{i}\le10^{6}$ |
| 12-20 | 没有其他限制 |
输出描述
输出一行n个正整数表示排序后的数字。
提示
【样例解释1】
由于1和2的出现次数相同,因此相对顺序不变。
【样例解释2】
由于1的出现次数比2和3多,因此1会被排在2和3前面。 2 3由于出现次数相同,因此相对位置不变。