#include <iostream>
#include <queue>
#include <vector>

using namespace std;

priority_queue<int> p; // std implementation of max-heap
vector<int> v;

int main()
{
	int n;
	cin >> n;
	// Building heap
	for (int i = 0; i < n; i++)
	{
		int x;
		cin >> x;
		p.push(x);
	}
	// Pop operations
	for (int i = 0; i < n; i++)
	{
		v.push_back(p.top());
		p.pop();
	}

	for (int i = 0; i < n; i++)
		cout << v[i] << " ";
	cout << endl;
}