Historia
Oświadczenie: Może zawierać wymyślone informacje o kangurach.
Kangury przemierzają kilka etapów rozwoju. Gdy dorastają i stają się silniejsze, mogą skakać coraz wyżej i dłużej i mogą skakać więcej razy, zanim poczują głód.
Na etapie 1 kangur jest bardzo mały i nie może w ogóle skakać. Mimo to stale wymaga pożywienia. Możemy przedstawić wzór aktywności kangura z etapu 1 w ten sposób.
o
Na etapie 2 kangur może wykonywać małe skoki, ale nie więcej niż 2, zanim stanie się głodny. Możemy przedstawić taki wzór aktywności kangura 2. stopnia .
o o
o o o
Po etapie 2 kangur szybko się poprawia. Na każdym kolejnym etapie kangur może skoczyć nieco wyżej (1 jednostka w graficznej reprezentacji) i dwa razy więcej. Na przykład wzór aktywności kangura trzeciego stopnia wygląda tak.
o o o o
o o o o o o o o
o o o o o
Na etapie n wzorzec aktywności składa się z 2 skoków w kształcie litery V o wysokości n n-1 .
Na przykład na etapie 4 jest 8 skoków o wysokości 4 .
o o o o o o o o
o o o o o o o o o o o o o o o o
o o o o o o o o o o o o o o o o
o o o o o o o o o
Zadanie
Napisz pełny program lub funkcję, która przyjmuje na wejściu dodatnią liczbę całkowitą n i wypisuje lub zwraca artystyczną reprezentację ASCII wzorca aktywności kangura stage n .
Dozwolone są otaczające spacje i kody specjalne ANSI, o ile wzór wygląda dokładnie tak, jak pokazano powyżej.
Jeśli wybierzesz funkcję, która zwraca dane wyjściowe, musi zwrócić pojedynczy ciąg lub tablicę znaków, która wyświetla prawidłowe dane wyjściowe po wydrukowaniu. Zwracanie tablicy ciągów jest niedozwolone.
Zamiast tego możesz użyć dowolnego drukowalnego znaku, który nie jest spacją o
, o ile jest on spójny z wzorcem aktywności i we wszystkich wzorcach w odpowiedzi.
To jest golf golfowy ; niech wygra najkrótsza odpowiedź w bajtach!
o
. Czy możesz również użyć dowolnej postaci do przedstawienia spacji (o ile są one różne?)?