Wprowadzenie
Możesz znać i kochać swoje normalne koło jednostek. Ale matematycy są szaleni i dlatego wyodrębnili tę koncepcję do dowolnego punktu, który spełnia x*x+y*y=1
. Ponieważ kryptografowie 1 są również dziwni, uwielbiają skończone pola, a czasem skończone pierścienie (to nie jest tak, że mają duży wybór), więc połączmy to!
Wyzwanie
Wejście
Dodatnia liczba całkowita większa niż jedna w twoim ulubionym kodowaniu. Nazwijmy ten numer n.
Wynik
Wyprowadzisz „obraz” (składający się z n razy n znaków) modułu koła modulo liczbę całkowitą wejściową jako ASCII-Art, używając „X” (łaciński X wielkich liter) i „” (spacja). Końcowe spacje i znaki nowej linii są dozwolone.
Więcej szczegółów
Musisz objąć układ współrzędnych od dolnego lewego do górnego prawego. Ilekroć punkt spełnia równanie okręgu, umieść X w tej pozycji, w przeciwnym razie umieść spację.
Warunkiem punktu należy uznać za część granicy okręgu jest:
mod(x*x+y*y,n)==1
.
Oto krótka ilustracja układu współrzędnych:
(0,4)(1,4)(2,4)(3,4)(4,4)
(0,3)(1,3)(2,3)(3,3)(4,3)
(0,2)(1,2)(2,2)(3,2)(4,2)
(0,1)(1,1)(2,1)(3,1)(4,1)
(0,0)(1,0)(2,0)(3,0)(4,0)
Jeśli ci to pomoże, możesz także odwrócić kierunek dowolnej osi, ale przykłady zakładają taką orientację.
Kto wygrywa?
To jest golf golfowy, więc wygrywa najkrótszy kod w bajcie! Dozwolone są tylko domyślne metody We / Wy, a wszystkie standardowe luki są zabronione.
Przykłady
Wejście: 2
X
X
Wejście: 3
X
X
XX
Wejście: 5
X
X
X X
Wejście: 7
X
X X
X X
X
X X
Wejście: 11
X
XX
X X
X X
XX
X
X X
Wejście: 42
X
X X
X X
X X
X X
X
X X X X
X X X X
X
X X
X X
X X
X X
X
X X X X
X
X X
X X
X X
X X
X
X X X X
X X X X
X
X X
X X
X X
X X
X
X X X X
1 Proponuję spojrzeć na mój profil, jeśli się tutaj zastanawiasz.