Biorąc pod uwagę dodatnią liczbę całkowitą n < 10
, utwórz 2-wymiarową matrycę, w której każda lokalizacja jest wypełniona jego x
i y
indeksem (zaczynając od lewego górnego rogu).
Na przykład:
Wejście: 2
00 10
10 11
Wejście: 3
00 10 20
01 11 21
02 12 22
Po utworzeniu siatki losowo wypełnij każdy indeks. Może to być znak „x” lub dowolny inny sposób oznaczenia, że miejsce zostało wypełnione.
Określasz, którą lokalizację wypełnić, losowo generując wskaźniki wypełniające macierz. Możesz wypełnić tylko n ^ 2 razy, więc nie możesz wypełnić tyle razy, ile chcesz, dopóki matryca nie zostanie całkowicie wypełniona. Na koniec macierz musi zostać wypełniona, więc musisz wykonać pewną pracę, aby upewnić się, że sprawdziłeś liczby losowe, których używasz do wypełnienia, aby upewnić się, że miejsce nie jest już wypełnione.
Odśwież lub wydrukuj po każdym wypełnieniu, aby pokazać postęp iteracji napełniania.
Przykład wypełnienia:
Wejście: 2
00 10
01 11
00
jest wybierany losowo:
XX 10
01 11
01
jest wybierany losowo:
XX 10
XX 11
00
jest wybierany losowo, ale ponieważ został już wybrany, przerzut wybiera 10
:
XX XX
XX 11
11
jest wybierany losowo:
XX XX
XX XX
Nie drukuj liczb losowych, ponieważ wizualnie powinienem być w stanie zobaczyć, który indeks został wybrany. Rozumiem przez to, że nie drukuj „ 11
jest losowo wybierany:”. Jest tu dla dobra eksploracji.
Ponieważ jest to kod-golf Najkrótszy kod wygrywa.
Miłej zabawy i szczęśliwego golfa!
n>= 10
możliwe (musisz zacząć wiedzieć o maksymalnej długości, aby poprawnie wypełnić początkowe 0). Wypełnienie tego przypadku to jeden indeks na raz, a nie 1 cyfra na raz, prawda?