A36091. 序列排序
填空题
较易
知识点
题目描述
序列排序
题目描述
对于给定的正整数序列,按照每个数的各位数和从大到小排序,各位数和相同的按照本
身大小排序,大的在前,小的在后。
输入
第一行1个整数n,表示序列的大小。(0<n≤1000)第二行n个正整数,表示序列的每个数,每个数不大于10000000。
输出
输出按照题目要求排序后的序列
样例输入
6
17 26 9 13 88 10
样例输出
88 9 26 17 13 10
参考答案
#include<iostream>
using namespace std;
int main() {
int a[1000],c,i,j;
cin>>c;
for(i=0;i<c;i++){
cin>>a[i];
}
for(j=0;j<c-1;j++){
for(i=0;i<c-1-j;i++){
if((a[i]%10+a[i]/10)<(a[i+1]/10+a[i+1]%10)){
int d;
d=a[i];
a[i]=a[i+1];
a[i+1]=d;
}
}
}
for(i=0;i<c;i++){
cout<<a[i]<<" ";
}
}
上一题
下一题