#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
vector<int> origin,CBT;
int index=0,N;
void inOrder(int root){
if(root>=N) return;
inOrder(2*root+1);
CBT[root]=origin[index++];
inOrder(2*root+2);
}
int main(){
scanf("%d",&N);
origin.resize(N);
CBT.resize(N);
for(int i=0;i<N;i++)
scanf("%d",&origin[i]);
sort(origin.begin(),origin.end());
inOrder(0);
printf("%d",CBT[0]);
for(int i=1;i<N;i++)
printf(" %d",CBT[i]);
return 0;
}