Wprowadzenie
Napisz program, który wyświetli wychodzącą spiralę słynnego pangram zgodnie z podanymi zasadami.
Wyzwanie
Pangram to zdanie stosując każdą literę alfabetu danego przynajmniej raz. Jednym z najbardziej znanych pangramów jest ten, który jest szeroko stosowany w przeglądarce czcionek Windows, a mianowicie: „ Szybki brązowy lis przeskakuje nad leniwym psem ”. Wyzwanie polega na utworzeniu spirali na podstawie tego tekstu.
Twoim zadaniem jest wydrukowanie dokładnie tego tekstu:
heeeeellllllllllllazzzzzzzzzzz
hummmmmmmmmmmmmppppppppppppppy
hubrrrrrrrrrrrrrrrrrrooooooosy
hukyddddoooooooooooooooggggwsy
hukyveeeeerrrrrrrrrrrrrrrrtwsy
hukyvxjjjjjjjjjjuuuuuuuuuttwsy
hukyvxkbbrrrrrrrrrrrrrrrmttwsy
hukyvxkogggggggttttttttomttwsy
tukyvokoellllllllllllahomttwsy
tukyvokoeovvvvvvvvvvvzhomttwsy
tukyvocoeoummmmmmmmmezhomttwsy
tukyvocoeoufooooooopezhomttwsy
tukyvocohoufroooooxpezhomttwsy
tukyvoiohoufrquuuwxpezhomttwsy
tucyvoiohoufbqttiwxpezhomttwsy
tucyvoiohoufbeehiwxprzhomttwsy
tucyvoiohoufkccciwxprzeomttwsy
tjiyvoidhounnnnnnwxprzeomttwsy
tjiyvoidhojjjjjjjjxprzeomttwsy
tjiyvoidhssssssssssprzeopttwsy
tjiyvoidttttttttttttrzeopttwsy
tjiyvoiyyyyyyyyyyyyyyzqopttwoy
tjiyvouuuuuuuuuuuuuuuuqwpttwoy
tjiyvffffnnnnnnnnnnnnnnwpttwoy
tjiyossssssssssssssssssspthwoy
tjizzzzalllllllllllleeeeehhwoy
tjuuqqqqqqqqqqqqqqqqqeeeeehnod
txxxxxoooooooooooooooffffffnod
reeeeevvvvvvvvvvvvvvvvvvvvvvod
gggggggoooooooooooooood
Oto jak jest generowany,
- Był gorliwy lis, który lubił pangram „Szybki brązowy lis skacze nad leniwym psem”. Pewnego dnia znalazł się w centrum zewnętrznej spirali i postanowił wskoczyć w nią i malować dalej.
- Chciałby przejść przez pangram od początku do końca, a jeśli litera jest n-tą literą w alfabecie, chciałby ją pomalować n razy.
- Jednak lis nie był zbyt dobry w pokonywaniu zakrętów, więc po dotarciu do każdego rogu musiał się zatrzymać i przejść do następnej litery.
- On również postanowił powtórzyć trzykrotnie pangram podkreślić, że jest Szybki brązowy lis.
- Twoim zadaniem jest pokazanie, jak wyglądałaby spirala po tym, jak lis pomalował wszystkie te litery.
(Zwykła wersja bez opowiadania historii)
Słynny pangram „Szybki brązowy lis przeskakuje nad leniwym psem” powtarza się trzy razy, z usuniętymi spacjami i wszystkimi literami, aby wygenerować
thequickbrownfoxjumpsoverthelazydogthequickbrownfoxjumpsoverthelazydogthequickbrownfoxjumpsoverthelazydog
Spirala zaczyna się od środka i zaczyna się na literę „t”, zaczyna się od prawej strony i wychodzi na zewnątrz zgodnie z ruchem wskazówek zegara. Jeśli bieżącym znakiem jest n-ta litera alfabetu, to za każdym razem przechodzi do następnego znaku
- spirala osiąga róg, lub
- bieżące litery są drukowane dokładnie n razy.
Aby lepiej to zilustrować, wyjaśnię, w jaki sposób generowana jest spirala związana z pierwszymi trzema słowami „szybki przegląd”.
rooooo
rquuuw
bqttiw
beehiw
kccciw
nnnnnnw
Lis zaczyna się od „t”, idzie w prawo, dociera do pierwszego rogu, maluje go za pomocą „t”, a następnie przechodzi do „h” i schodzi w dół, dociera do drugiego rogu, przełącza się na „e” i idzie w lewo, dociera do Trzeci róg, przełącza się na „q” i idzie w górę, osiąga 4. róg, przełącza się na „u” i idzie w prawo, osiąga róg i przełącza się na „i”, schodzi w dół, osiąga róg i przełącza na „c”, idzie w lewo, z powodzeniem maluje 3 „c” przed osiągnięciem następnego rogu , przełącza się na „k” i przechodzi w lewo , dociera do rogu od razu, przełącza się na „b” i idzie w górę, maluje 2 „b” s przed osiągnięciem następny róg przełącza na „r”i idzie w górę , dochodzi do rogu i przełącza się na „o”, idzie w prawo, a następnie „w”, w dół, „n”, w lewo.
Okular
Możesz wziąć opcjonalne dane wejściowe, które zawierają dowolną standardową postać ciągu
thequickbrownfoxjumpsoverthelazydogthequickbrownfoxjumpsoverthelazydogthequickbrownfoxjumpsoverthelazydog
Dane wyjściowe muszą być sformatowane jako ciąg i muszą przejść do STDOUT zamiast plików lub STDERR, z nowymi wierszami umieszczonymi poprawnie. Nagłówek i końcowe puste linie nie mają znaczenia. Dozwolone są nagłówki i spacje w każdej linii, ale muszą być spójne. Więc jeśli dodasz 5 spacji przed jednym wierszem danego tekstu, musisz dodać dokładnie 5 spacji przed każdym wierszem, aby spirala wyglądała tak samo.
To jest golf golfowy , najniższa liczba bajtów wygrywa.
Jak zwykle obowiązują tutaj domyślne luki .
Wyjaśnienia są mile widziane, choć nie są konieczne.
Tytuł został zredagowany, by uczynić go pangramem dla komentarza Caira coinheringaahing.
Leniwy pies jest zbyt leniwy, aby pojawić się w historii.
Dążę do stworzenia wyzwania łańcuchowego, w którym litery do wyjścia nie można obliczyć za pomocą prostych funkcji współrzędnych.