Biorąc pod uwagę nieposortowaną listę unikalnych ściśle dodatnich liczb całkowitych, minimalnie posortuj ją do macierzy 2D. Lista wejście jest gwarancją długość zespolonego, co oznacza, że matrycę wyjściowe nie musi być kwadratowe, ale ma wielkość n x m
z n,m > 1
.
„Minimalne sortowanie” oznacza tutaj:
- Posortuj listę w porządku rosnącym.
- Kompaktowy macierzy wyjściowej, jak to tylko możliwe - minimalizacja sumy wymiarów matrycy (na przykład w przypadku
20
elementów wejściowych jak wejściowych,5x4
lub4x5
matryca wyjście jest to wymagane, a nie2x10
). - Zagęszczaj posortowane liczby jak najdalej w lewym górnym rogu macierzy, zaczynając od pierwszego elementu na posortowanej liście.
- Można to traktować jako sortowanie listy, a następnie krojenie jej wzdłuż przekątnych matrycy, zaczynając od lewego górnego rogu.
Przykłady:
Dla danych 1..20
wyjściowych jest to macierz 5x4 lub 4x5, jak następuje:
1 2 4 7 11
3 5 8 12 15
6 9 13 16 18
10 14 17 19 20
1 2 4 7
3 5 8 11
6 9 12 15
10 13 16 18
14 17 19 20
Dla danych [3, 5, 12, 9, 6, 11]
wyjściowych jest to 2x3 lub 3x2 w następujący sposób
3 5 9
6 11 12
3 5
6 9
11 12
W przypadku danych wejściowych [14, 20, 200, 33, 12, 1, 7, 99, 58]
wyjściowy wynik to 3x3 w następujący sposób
1 7 14
12 20 58
33 99 200
Dla danych wejściowych 1..10
wyjście powinno wynosić 2x5 lub 5x2 w następujący sposób
1 2 4 6 8
3 5 7 9 10
1 2
3 4
5 6
7 8
9 10
[5, 9, 33, 65, 12, 7, 80, 42, 48, 30, 11, 57, 69, 92, 91]
Wyjściowy sygnał wyjściowy to 5x3 lub 3x5 w następujący sposób
5 7 11 33 57
9 12 42 65 80
30 48 69 91 92
5 7 11
9 12 33
30 42 57
48 65 80
69 91 92
Zasady
- Można założyć, że dane wejściowe pasują do rodzimej liczby całkowitej w twoim języku.
- Dane wejściowe i wyjściowe można podać dowolną dogodną metodą .
- Dopuszczalny jest pełny program lub funkcja. Jeśli funkcja, możesz zwrócić dane wyjściowe zamiast je drukować.
- Standardowe luki są zabronione.
- To jest golf golfowy, więc obowiązują wszystkie zwykłe zasady gry w golfa, a wygrywa najkrótszy kod (w bajtach).
15
element testowy elementu.