Название говорит само за себя. Ваша цель - написать программу, которая формирует прямоугольник символов размером w × h, который можно поворачивать и запускать повторно, чтобы вывести количество выполненных поворотов против часовой стрелки (CCW) на 90 °.
Например, если программа 3 × 2
abc
def
Решил проблему, он первоначально вывел бы 0, и последовательные вращения на 90 ° против часовой стрелки
cf fed da
be cba eb
ad fc
выведет 1, 2 и 3 соответственно.
Использование комментариев делает эту задачу тривиальной в большинстве языков. Например, в Ruby это можно сделать в прямоугольнике 7 × 7:
###p###
### ###
###1###
p 0#2 p
###3###
### ###
###p###
Задача состоит в том, чтобы сделать это без каких-либо комментариев.
счет
Ваша оценка w * h, площадь вашего прямоугольника. Новые строки исключены. Другими словами, код-гольф, переводы строк не учитываются.
Оценка для примера Ruby - 49 (хотя, конечно, он недействителен, так как у него есть комментарии).
Примечания
- Ваш код должен быть действительно прямоугольным, без пропущенных символов в конце строк.
- Если вы хотите, вы можете вывести другие допустимые значения «mod 90 °» вместо 0 1 2 3. Так что 8 - это хорошо вместо 0, а -1 - вместо 3 и т. Д.
- Вывод может идти на консоль или в файл.
- Применяются стандартные лазейки.
Я надеюсь, что мой первый вопрос действительно заинтриговывает некоторых людей. Наслаждайтесь!
echo 0;exit;e
в bash разрешен?