Вот тыква ASCII, вырезанная в Джек-о-Фонарь. Разве это не мило?
((^v^))
Вот призрак ASCII. Посмотрите, как это жутко!
\{O.O}/
Очевидно, тыквы должны быть на земле, с промежутком между ними, чтобы они не гнили.
Призраки, однако, любят стоять на вершине тыквы, поэтому они даже жуткие . Однако им приходится стоять на двух тыквах, иначе их призрачный вес раздавит тыкву под ними. Но из-за того, как работает их призрачная магия , несколько призраков могут складывать и делить тыквы, при условии, что призраки либо делятся равномерно на нижних тыкв или нижних призраков. Другими словами, образуя форму, похожую на человеческую пирамиду . Обратите внимание, что призраки не могут складываться на призраках, если под ними нет тыквы (так работает магия).
С учетом двух неотрицательных целых чисел g
и p
, представляющих количество g
хостов и p
umpkins, выведите наиболее компактную из возможных левых формаций, следуя приведенным выше правилам стекирования пирамид. Оставшиеся тыквы и призраки (то есть те, которые не образуют пирамиду) уходят на землю справа.
Для пояснения, эти формирования в порядке (разделены пробелами) и служат примером ввода / вывода:
0p 1g
\{O.O}/
1p 0g
((^v^))
1p 1g
((^v^)) \{O.O}/
2p 1g
\{O.O}/
((^v^)) ((^v^))
2p 2g
\{O.O}/
((^v^)) ((^v^)) \{O.O}/
3p 1g
\{O.O}/
((^v^)) ((^v^)) ((^v^))
3p 2g
\{O.O}/ \{O.O}/
((^v^)) ((^v^)) ((^v^))
3p 3g
\{O.O}/
\{O.O}/ \{O.O}/
((^v^)) ((^v^)) ((^v^))
0p 4g
\{O.O}/ \{O.O}/ \{O.O}/ \{O.O}/
3p 0g
((^v^)) ((^v^)) ((^v^))
7p 6g
\{O.O}/
\{O.O}/ \{O.O}/
\{O.O}/ \{O.O}/ \{O.O}/
((^v^)) ((^v^)) ((^v^)) ((^v^)) ((^v^)) ((^v^)) ((^v^))
Эти образования не в порядке
\{O.O}/
((^v^))
\{O.O}/
((^v^))
((^v^)) ((^v^)) \{O.O}/
\{O.O}/
\{O.O}/
((^v^)) ((^v^))
\{O.O}/
\{O.O}/ ((^v^)) ((^v^))
((^v^))
((^v^)) ((^v^))
\{O.O}/
((^v^)) ((^v^))
вход
Два неотрицательных целых числа в любом удобном формате . По крайней мере, одно из чисел будет ненулевым. Вы можете использовать входные данные в любом порядке (т. Е. В примерах, в которых сначала были тыквы) - пожалуйста, укажите, как вы принимаете входные данные в своем ответе.
Выход
ASCII-арт-представление призраков и тыкв, следуя приведенным выше правилам. Лидирующие / завершающие символы новой строки или другие пробелы являются необязательными, при условии, что призраки и тыквы выстраиваются в линию соответствующим образом.
правила
- Либо полная программа или функция приемлемы. Если функция, вы можете вернуть вывод, а не распечатать его.
- Стандартные лазейки запрещены.
- Это код-гольф, поэтому применяются все обычные правила игры в гольф, и выигрывает самый короткий код (в байтах).