Сортировка кортежей
Назовем кортежем длины M набор из M натуральных чисел (x_1, x_2, x_3, ..., x_M). Положение чисел в наборе фиксировано, то есть, при работе с кортежем числа внутри кортежа менять местами нельзя. Вам будет дан набор из N кортежей, все кортежи которого имеют одну и ту же длину. Ваша задача состоит в том, чтобы упорядочить эти кортежи по не убыванию.
Для того, чтобы решить задачу, воспользуйтесь следующим определением порядка на наборе кортежей. Кортеж (x_1, x_2, x_3, ..., x_M) строго меньше, чем кортеж (y_1, y_2, y_3, ..., y_M), если существует такой номер элемента кортежа K, что для всех элементов с номерами 1 ≤ i < K из кортежей выполняется x_i = y_i, а для элементов с номерами K выполняется x_K < y_K. То есть первые K-1 элементы кортежей совпадают, а K-ый элемент в первом кортеже строго меньше чем во втором.
Например, кортеж (3, 5, 6, 7, 6, 9) строго меньше кортежа (3, 5, 6, 9, 1, 1), так как первые три числа в этих кортежах совпадают, а четвёртое число в первом кортеже меньше чем во втором.
Кортежи (4, 1, 2, 2, 1) и (4, 1, 2, 2, 1) равны, а кортеж (5, 2, 3, 6, 8, 6, 7) строго больше кортежа (5, 2, 1, 9, 3, 3, 7).
Вот ещё примеры сравнения кортежей:
(1, 2, 3, 4, 5) < (1, 2, 3, 4, 7)
(4, 6, 3, 2, 5) > (2, 9, 9, 9, 9)
(5, 4, 4) < (6, 3, 3)
(5, 4, 4) > (5, 3, 5)
(4, 3, 2, 4, 5, 5) = (4, 3, 2, 4, 5, 5)
Входные данные
В первой строке входного текстового файла содержаться два натуральных числа N и M, разделённые пробелом. N - это количество кортежей (1 ≤ N ≤ 1000000), M - количество чисел в каждом кортеже (1 ≤ M ≤ 10). Далее идут N строк, в каждой из которых через пробел записаны M чисел - элементы соответствующего кортежа. Элементы каждого кортежа - целые числа из диапазона от 1 до 9 включительно.
Выходные данные
Выведите в выходной текстовый файл все кортежи в неубывающем порядке. Каждый кортеж необходимо выводить в отдельной строке. Элементы кортежа разделять одним пробелом. В первой строке файла должен выводиться первый по порядку кортеж. В последней - самый последний.