Zadanie
Biorąc pod uwagę niepusty ciąg małych liter ASCII a
- z
weź jego pierwszy znak i:
- Otocz go kwadratem kopii drugiej postaci,
- Otocz to diamentem kopii trzeciej postaci,
- Otocz to kwadratem czwartej postaci…
… Na przemian między kwadratowymi i diamentowymi granicami do końca sznurka. Puste miejsce między granicami powinno być reprezentowane przez spacje ASCII ( ).
Aby dodać kwadratową ramkę, narysuj kwadrat dokładnie wokół całego obecnego „roboczego układu”:
sssssssssss
t s t s
t t s t t s
t t s t t s
t aaa t s t aaa t s
t aca t => st aca ts
t aaa t s t aaa t s
t t s t t s
t t s t t s
t s t s
sssssssssss
Aby dodać obramowanie diamentowe , narysuj wyśrodkowany kształt rombu, który dotyka najbardziej zewnętrznego kwadratu po przekątnej , ale nie prostopadle :
s
s s
s s
s s
s s
s s
s s
wwwwwwwwwww s wwwwwwwwwww s
w o w s w o w s
w o o w s w o o w s
w o o w s w o o w s
w o eee o w s w o eee o w s
wo eme ow => s wo eme ow s
w o eee o w s w o eee o w s
w o o w s w o o w s
w o o w s w o o w s
w o w s w o w s
wwwwwwwwwww s wwwwwwwwwww s
s s
s s
s s
s s
s s
s s
s
Twój program musi wypisać końcową tablicę.
- Każda linia może zawierać dowolną liczbę końcowych spacji.
- Możesz wypisać listę ciągów znaków reprezentujących linie lub pojedynczy ciąg znaków oddzielony znakiem nowej linii z opcjonalnym końcowym znakiem nowego wiersza.
- Wiodące / końcowe puste linie są niedozwolone.
- Wiodące kolumny przestrzeni są również niedozwolone.
To jest golf golfowy . Najkrótszy kod w bajtach wygrywa.
Przypadki testowe
Powyższe przykłady są spodziewane produkty o cat
, cats
, meow
i meows
, w celu przeczytania. Kilka innych spraw wartych załatwienia:
Jako dane wejściowe
a
twój program powinien wypisać:a
Jako dane wejściowe
ab
twój program powinien wypisać:bbb bab bbb
Jako dane wejściowe
codegolf
twój program powinien wypisać:fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff f l f f l l f f l l f f l l f f l l f f l l f f l l f f l l f f l l f f l l f f l l f f l l f f l l f f l l f f l l f f l ooooooooooooooooooooooooooo l f f l o g o l f f l o g g o l f f l o g g o l f f l o g g o l f f l o g g o l f f l o g g o l f f l o g g o l f f l o g eeeeeeeeeee g o l f f l o g e d e g o l f f l o g e d d e g o l f f l o g e d d e g o l f f l o g e d ooo d e g o l f fl og ed oco de go lf f l o g e d ooo d e g o l f f l o g e d d e g o l f f l o g e d d e g o l f f l o g e d e g o l f f l o g eeeeeeeeeee g o l f f l o g g o l f f l o g g o l f f l o g g o l f f l o g g o l f f l o g g o l f f l o g g o l f f l o g o l f f l ooooooooooooooooooooooooooo l f f l l f f l l f f l l f f l l f f l l f f l l f f l l f f l l f f l l f f l l f f l l f f l l f f l l f f l l f f l f fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
Realizacja referencyjna
Napisałem kod Julii, że wyjście twojego programu powinno pasować (przynajmniej wizualnie). Wypróbuj online!
\r\n
) zamiast jednego (\n
)?