2176: 按照个位数排序

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:19 解决:15

题目描述

对于给定的正整数序列,按照个位数从小到大排序,个位数相同的按照本身大小从小到大排序。

输入

第一行1个整数n,表示序列的大小。( 0 < n ≤ 1000) 第二行n个正整数,表示序列的每个数,每个数不大于100000000。

输出

输出按照题目要求排序后的序列

样例输入 复制

6
17 23 9 13 88 10

样例输出 复制

10 13 23 17 88 9

提示

#include<bits/stdc++.h>
using namespace std;
int a[1010],n;
int cmp(int x,int y) {
	int _x=x%10;
	int _y=y%10;
	if (_x==_y)
	    return x<y;
	else
	    return _x<_y;
}
int main(){
	cin>>n;
	for (int i=1;i<=n;i++) {
		cin>>a[i];
	} 
	sort(a+1,a+n+1,cmp);
	for (int i=1;i<=n;i++) {
		cout<<a[i]<<" ";
	}
	return 0;
}