1. 程式人生 > >EOJ(排序)——2031. 絕對值排序

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; }