(Losowo inspirowany https://codegolf.meta.stackexchange.com/a/17272/42963 )
Biorąc pod uwagę prostokątną matrycę cyfr (tj. 0 - 9), Wyślij „części” matrycy tak, jakby cyfry były połączone razem, tworząc jeden element, w porządku rosnącym według cyfr. Elementy są gwarantowane, że łączą się tylko prostopadle - żaden element nie połączy się po przekątnej. Zawsze będzie maksymalnie 10 sztuk (tj. 3Kawałek nie pojawi się dwukrotnie w tej samej matrycy).
Na przykład biorąc pod uwagę macierz
0 1 1 1
0 0 1 2
3 3 2 2
następujące elementy i przykładowe dane wyjściowe:
0
0 0
1 1 1
1
2
2 2
3 3
Odstępy są ważne, aby zachować kształt elementów, ale elementy niekoniecznie wymagają wewnętrznych odstępów. Same elementy powinny jakoś zostać rozróżnione w spójny sposób (np. Nowa linia między elementami, upewniając się, że każdy ma inny charakter itp.). Dodatkowo, zewnętrzne białe znaki (na przykład końcowe znaki nowej linii lub wiodące kolumny) są niedozwolone. Na przykład poprawne byłyby również:
0
00
111
1
2
22
33
lub
#
##
###
#
#
##
##
Ale nie byłoby (zwróć uwagę na końcowe spacje za 0):
0
0 0
Obroty lub odbicia są również niedozwolone. Na przykład wyprowadzanie
1
111
dla powyższej macierzy jest również nieprawidłowa.
Elementy matrycy mogą mieć otwory lub być tylko jednym elementem:
0 0 0 1
0 2 0 1
0 0 0 3
Lub kawałek może być całą matrycą:
0 0 0
0 0 0
Oto większy, bardziej skomplikowany przypadek testowy:
1 1 1 1 1 2 2
3 4 4 4 2 2 2
5 5 4 4 2 0 0
5 6 6 6 6 7 7
5 6 8 8 6 6 7
9 6 6 6 7 7 7
I przykładowy wynik:
00
11111
22
222
2
3
444
44
55
5
5
6666
6 66
666
77
7
777
88
9
Reguły i I / O
- Dane wejściowe i wyjściowe można podać dowolną dogodną metodą .
- Możesz wydrukować go do STDOUT lub zwrócić jako wynik funkcji.
- Dopuszczalny jest pełny program lub funkcja.
1Wymagana jest wiodąca biała spacja, aby zachować kształt (np. Kształt litery „T” w przykładzie), spójna biała spacja, aby odróżnić elementy, i dozwolona jest pojedyncza nowa linia na końcu, ale żadna inna biała spacja nie jest dozwolona.- Możesz bezpiecznie założyć, że elementy są ponumerowane w
0sposóbNciągły, co oznacza, że (na przykład)3nie zostanie pominięty w sześcioczęściowej matrycy. - 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).
0jako wartość wypełniająca? Tak więc każdy kawałek byłby wyprowadzany z resztą wartości w macierzy ustawioną na0
-1lub innej wartości zamiast niczego / białych znaków nie byłoby jednak w porządku.
' 'w takim przypadku należy użyć spacji ( )?
-1lub spacją reprezentującą pustą spację lub brak elementu, jeśli to możliwe)?