Вот мое решение.
1) Сортировка строк по первому элементу от наибольшего к низшему.
1 6 5 1
3 3 -\ 3 3
2 4 -/ 2 4
5 1 1 6
2) Разделите его на группы ⌈√n⌉, и чтоосталось (не более ⌈√n⌉ групп)
5 1 5 1
3 3 -\ 3 3
2 4 -/
1 6 2 4
1 6
3) Сортировка строк в каждой группе по второму элементу от наибольшего к низшему
5 1 3 3
3 3 5 1
->
2 4 1 6
1 6 2 4
Доказательствоправильности:
Увеличение подпоследовательностей в столбце 1 может происходить только в одной группе (размер <= ⌈√n⌉), </p>
Нет элементов 2 возрастающих подпоследовательностей в столбце 2, кромев одной группе (не более ⌈√n⌉ групп)