Попередня історія
Відмова від відповідальності: Може містити складену інформацію про кенгуру.
Кенгуру проходять кілька стадій розвитку. Коли вони дорослішають і сильніші, вони можуть стрибати вище і довше, і вони можуть більше стрибати, перш ніж голодувати.
У першій стадії кенгуру дуже мало і зовсім не може стрибати. Незважаючи на це, постійно потребує харчування. Ми можемо представити зразок діяльності кенгуру на етапі 1 таким чином.
o
На стадії 2 , кенгуру може робити невеликі стрибки, але не більше ніж 2 , перш ніж він зголодніє. Ми можемо уявити стадії 2 зразок активності кенгуру , як це.
o o
o o o
Після 2 етапу кенгуру швидко поліпшується. На кожному наступному етапі кенгуру може стрибати трохи вище (1 одиниця в графічному зображенні) і вдвічі більше разів. Наприклад, схема діяльності кенгуру 3 етапу виглядає приблизно так.
o o o o
o o o o o o o o
o o o o o
Для етапу n схема активності складається з 2 n-1 V-подібних стрибків висотою n .
Наприклад, для 4 етапу є 8 стрибків висотою 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
Завдання
Напишіть повну програму або функцію, яка приймає позитивне ціле n як вхід і друкує або повертає ASCII художнє зображення сценічної дії кенгуру n .
Доступні оточуючі пробіли та коди відхилення ANSI до тих пір, поки візерунок виглядатиме так, як зображено вище.
Якщо ви вибрали функцію, яка повертає результат, вона повинна повернути один рядок або масив символів, який відображає належний вихід при друкуванні. Повернення масиву рядків не дозволено.
Ви можете використовувати будь-який символ для друку, непробільний простір замість нього o
, якщо він є узгодженим у межах дії та в усіх шаблонах вашої відповіді.
Це код-гольф ; може виграти найкоротша відповідь у байтах!
o
. Чи можете ви також використовувати будь-який символ для представлення пробілів (якщо вони різні?)?