奇偶位排序

来源:互联网 发布:淘宝商城女装秋装外套 编辑:程序博客网 时间:2024/06/07 21:48

A student of z-school found a kind of sorting called z-sort. The array a with nelements are z-sorted if two conditions hold:

  1. ai ≥ ai - 1 for all even i,
  2. ai ≤ ai - 1 for all odd i > 1.

For example the arrays [1,2,1,2] and [1,1,1,1] are z-sorted while the array[1,2,3,4] isn’t z-sorted.

Can you make the array z-sorted?

Input

The first line contains a single integer n (1 ≤ n ≤ 1000) — the number of elements in the array a.

The second line contains n integers ai (1 ≤ ai ≤ 109) — the elements of the array a.

Output

If it's possible to make the array a z-sorted print n space separated integers ai — the elements after z-sort. Otherwise print the only word "Impossible".

Example
Input
41 2 2 1
Output
1 2 1 2
Input
51 3 2 2 5
Output

1 5 2 3 2

#include <stdio.h>#include <algorithm>using namespace std;int a[1003],b[1003];bool cmp(int a,int b){return a<b;}int main(){int i,n,k=0;scanf("%d",&n);for(i=0; i<n; i++){scanf("%d",&a[i]);}sort (a,a+n,cmp);for(i=0; i<n; i+=2){b[i]=a[k++];}for(i=1; i<n; i+=2){b[i]=a[k++];}for(int j=0; j<k; j++){printf("%d%c",b[j],j==k-1?'\n':' ');}return 0;}