Golf program lub funkcja, która daje lokalizacji gniazda gnu , który zaczyna się na placu na nieskończonej szachownicy , która jest numerowany w kierunku przeciwnym do ruchu wskazówek zegara kwadratowy spirali, gdzie gnu zawsze odwiedza najniższym numerze kwadratowy może ona dotrzeć, że nie ma jeszcze odwiedziłem.
Inspiracja: Uwięziony rycerz i OEIS A316667 .
Edycja: ta sekwencja jest teraz w OEIS jako A323763 .
Kod może wygenerować lokalizację, pierwsze lokalizacji lub wygenerować sekwencję bez wprowadzania danych.
Zamiast tego możesz podać jej lokalizację po (lub maksymalnie) skokach, ale jeśli tak, to zaznacz to wyraźnie w swojej odpowiedzi i upewnij się, że wartość daje 1
(lub w [1]
razie potrzeby).
To jest golf golfowy , więc celem jest stworzenie działającego kodu w jak najmniejszej liczbie bajtów w wybranym języku.
Uwaga: gnu zostaje uwięziony (podobnie jak rycerz robi na jego położenia, kwadratowy i wielbłąd ma na swoim , kwadratowe ) na nią lokalizacja na placu . Zachowanie twojego kodu może być niezdefiniowane dla większej niż to. (Dzięki Deadcode dla kodu C ++, który to znalazł!)
Szczegół
Plansza wygląda jak poniżej i trwa w nieskończoność:
101 100 99 98 97 96 95 94 93 92 91
102 65 64 63 62 61 60 59 58 57 90
103 66 37 36 35 34 33 32 31 56 89
104 67 38 17 16 15 14 13 30 55 88
105 68 39 18 5 4 3 12 29 54 87
106 69 40 19 6 1 2 11 28 53 86
107 70 41 20 7 8 9 10 27 52 85
108 71 42 21 22 23 24 25 26 51 84
109 72 43 44 45 46 47 48 49 50 83
110 73 74 75 76 77 78 79 80 81 82
111 112 113 114 115 116 117 118 119 120 121
Gnu jest "gnu" Fairy Chess kawałek - niestandardowa figurę, który może poruszać się zarówno jako rycerza (A -leaper) oraz jako wielbłąda (A -leaper).
W związku z tym mogła przenieść się do dowolnej z tych lokalizacji z początkowej lokalizacji :
. . . . . . . . . . .
. . . . 35 . 33 . . . .
. . . . 16 . 14 . . . .
. . 39 18 . . . 12 29 . .
. . . . . (1) . . . . .
. . 41 20 . . . 10 27 . .
. . . . 22 . 24 . . . .
. . . . 45 . 47 . . . .
. . . . . . . . . . .
Najniższa z nich to a ona jeszcze nie odwiedziła tego kwadratu, więc to drugi termin w sekwencji.
Następnie mogłaby przenieść się z do dowolnej z tych lokalizacji:
. . . . . . . . . . .
. . . . . . 14 . 30 . .
. . . . . . 3 . 29 . .
. . . . 6 1 . . . 53 86
. . . . . . . (10) . . .
. . . . 22 23 . . . 51 84
. . . . . . 47 . 49 . .
. . . . . . 78 . 80 . .
. . . . . . . . . . .
Jednak odwiedziła już kwadrat więc jej trzecia lokalizacja to kwadrat , najniższa, której jeszcze nie odwiedziła.
Pierwsze warunków ścieżki gnu to:
1, 10, 3, 6, 9, 4, 7, 2, 5, 8, 11, 14, 18, 15, 12, 16, 19, 22, 41, 17, 33, 30, 34, 13, 27, 23, 20, 24, 44, 40, 21, 39, 36, 60, 31, 53, 26, 46, 25, 28, 32, 29, 51, 47, 75, 42, 45, 71, 74, 70, 38, 35, 59, 56, 86, 50, 78, 49, 52, 80, 83, 79, 115, 73, 107, 67, 64, 68, 37, 61, 93, 55, 58, 54, 84, 48, 76, 43, 69, 103, 63, 66, 62, 94, 57, 87, 125, 82, 118, 77, 113, 72, 106, 148, 65, 97, 137, 91, 129, 85
Pierwsze skoków to ruchy rycerza, więc pierwsze określeń pokrywa się z A316667 .