| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 2 초 | 1024 MB | 273 | 151 | 124 | 60.488% |
Чтобы хоть как-то занять Альфа, Вилли Таннер предложил ему любопытную задачу.
У Альфа есть $n$ неотрицательных чисел. Каждое число можно приписать в конец другому и получить новое число. Например, если есть числа $123$ и $456$, из них можно получить либо $123456$, либо $456123$. Задача состоит в том, чтобы, объединив все числа в одно, таким образом получить наибольшее возможное. Так, если у Альфа есть два числа $123$ и $456$, то ответ на задачу будет $456123$.
Вилли схитрил и дал Альфу очень много чисел, но телевизор сам себя не посмотрит, поэтому Альф просит вас написать программу, которая решит эту задачу.
В первой строке входного файла задано число $n$ ($1 \le n \le 10^5$) --- количество чисел данных Альфу. Во второй строке файла через пробел даны $n$ чисел $a_i$ ($0 \le a_i \le 10^9$) --- данные Альфу числа.
В выходной файл через пробел выведите $n$ чисел из входного файла в таком порядке, чтобы при их последовательном соединении получалось наибольшее из возможных чисел.
3 1 2 3
3 2 1
4 20 17 18 2
2 20 18 17