Ordenação eficiente

Esse é um problema bem simples! Ordene um conjunto de números lidos usando um algoritmo de ordenação eficiente. Não use funções prontas: desenvolva a sua.

Entrada

A entrada é composta por duas linhas. A primeira contém a quantidade nn de elementos que devem ser ordenados. A segunda contém os nn números separados por espaço.

Saída

Sua saída deve conter os números ordenados de forma não decrescente. Os números devem ser separados por espaço e não deve sobrar espaço após o último número que deve ter uma quebra de linha.

Exemplo de Entrada 1

6
7 3 2 5 4 3

Exemplo de Saída 1

2 3 3 4 5 7