Вы знаете, они выглядят так:
Цель состоит в том, чтобы нарисовать музыку, которая выглядит следующим образом:
= = =
= = = = =
== = == = == = ====
== ==== == === = = =======
======== == ==== = ========= =
=================================
Правила таковы:
- Ширина иллюстрации составляет 33 символа, но если вам нужно, допускаются любые конечные пробелы, превышающие эту ширину.
- Каждый столбец состоит из знаков равенства (
=
). - Каждый столбец имеет произвольную высоту (высота следующего столбца никоим образом не должна зависеть от высоты предыдущего столбца), варьируясь от 1 до 6. Также хорошо, если по крайней мере возможно получить какой-либо ввод без строгого математическая вероятность (т. е. некоторые входные данные могут появляться реже, чем другие).
- Столбец не может плавать над дном и иметь пробелы в нем.
- Поскольку каждый столбец имеет минимальную высоту 1, в последней строке также не должно быть пробелов - он всегда состоит из 33 знаков равенства.
- Так как столбцы с высотой 6 не могут быть (в конце концов, все они случайны): в этом случае вам не нужно иметь верхнюю строку из пробелов. Применяется к любым крайним случаям такого рода: если вдруг в вашем коде не было столбцов с высотой больше 1, вам не нужно иметь дополнительные строки из пробелов выше нижней строки.
- Вы не берете никакой информации .
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
)
Math.random()
напрямую вычисляется из предыдущего вызова, если известны параметры линейного конгруэнтного генератора, что означает, что вам придется изменить большинство встроенных случайных функций, чтобы соответствовать этим критериям. Я полагаю, что это лучше сформулировано.