EOJ(排序)——2031. 绝对值排序

2031. 绝对值排序

给你 n(n⩽100) 个数,要求你把这 n 个数按照绝对值从小到大排序。
多 Case,处理直到文件结束。

输入

输入一个数 n,接下来一行是 n 个整数 (−10000<n<10000)。

输出

排序后按照绝对值从小到大输出 n 个数,输出一行,每两个数字之间有个空格,最后一个数字后面没空格。
样例

input

4
-3 -4 1 2
1
10

output

1 2 -3 -4
10

题目大意:

按绝对值排序。

题目解析:

sort函数,自定义排序规则。

具体代码:

#include<iostream>
#include<algorithm>
#include<stdlib.h>
using namespace std;

int A[110];
bool cmp(int x,int y){
	return abs(x)<abs(y);
}
int main()
{
    int n;
    while(cin>>n){
    	for(int i=0;i<n;i++)
    		cin>>A[i];
    	sort(A,A+n,cmp);
    	for(int i=0;i<n;i++){
    		cout<<A[i];
    		if(i!=n-1) 
    			cout<<" ";
    		else
    			cout<<endl;
		}
	}
    return 0;
}
全部评论

相关推荐

12-14 14:51
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务