Вступление
Напишите программу для вывода исходящей спирали знаменитой панграммы в соответствии с заданными правилами.
Вызов
Панграмма это предложение , используя каждую букву данного алфавита , по крайней мере один раз. Одна из самых известных панграмм широко используется в средстве просмотра шрифтов Windows, а именно: « Быстрая коричневая лиса перепрыгивает через ленивую собаку ». Задача состоит в том, чтобы вывести спираль на основе этого текста.
Ваша задача вывести этот точный текст:
heeeeellllllllllllazzzzzzzzzzz
hummmmmmmmmmmmmppppppppppppppy
hubrrrrrrrrrrrrrrrrrrooooooosy
hukyddddoooooooooooooooggggwsy
hukyveeeeerrrrrrrrrrrrrrrrtwsy
hukyvxjjjjjjjjjjuuuuuuuuuttwsy
hukyvxkbbrrrrrrrrrrrrrrrmttwsy
hukyvxkogggggggttttttttomttwsy
tukyvokoellllllllllllahomttwsy
tukyvokoeovvvvvvvvvvvzhomttwsy
tukyvocoeoummmmmmmmmezhomttwsy
tukyvocoeoufooooooopezhomttwsy
tukyvocohoufroooooxpezhomttwsy
tukyvoiohoufrquuuwxpezhomttwsy
tucyvoiohoufbqttiwxpezhomttwsy
tucyvoiohoufbeehiwxprzhomttwsy
tucyvoiohoufkccciwxprzeomttwsy
tjiyvoidhounnnnnnwxprzeomttwsy
tjiyvoidhojjjjjjjjxprzeomttwsy
tjiyvoidhssssssssssprzeopttwsy
tjiyvoidttttttttttttrzeopttwsy
tjiyvoiyyyyyyyyyyyyyyzqopttwoy
tjiyvouuuuuuuuuuuuuuuuqwpttwoy
tjiyvffffnnnnnnnnnnnnnnwpttwoy
tjiyossssssssssssssssssspthwoy
tjizzzzalllllllllllleeeeehhwoy
tjuuqqqqqqqqqqqqqqqqqeeeeehnod
txxxxxoooooooooooooooffffffnod
reeeeevvvvvvvvvvvvvvvvvvvvvvod
gggggggoooooooooooooood
Вот как это генерируется,
- Был ревностный лис, которому понравилась панграмма: «Быстрая коричневая лиса перепрыгивает через ленивую собаку». Однажды он оказался в центре внешней спирали и решил прыгнуть в нее и рисовать.
- Он хотел бы пройтись по панграмме от начала до конца, и если буква является n-й буквой в алфавите, он хотел бы нарисовать ее n раз.
- Однако лиса была не очень хороша в поворотах на поворотах, поэтому, достигнув каждого угла, он также должен был остановиться и перейти к следующей букве.
- Он также решил повторить панграмму трижды , чтобы подчеркнуть , что он шустрая лиса.
- Ваша задача - показать, как будет выглядеть спираль после того, как лиса раскрасит все эти буквы.
(Обычная версия без рассказа)
Знаменитая панграмма «Быстрая коричневая лиса перепрыгивает через ленивую собаку» повторяется трижды, с удалением пробелов и всех букв в нижнем регистре, чтобы генерировать
thequickbrownfoxjumpsoverthelazydogthequickbrownfoxjumpsoverthelazydogthequickbrownfoxjumpsoverthelazydog
Спираль начинается от центра и начинается с буквы «т», начинается с движения вправо и идет наружу по часовой стрелке. Если текущий символ является n-й буквой в алфавите, то он переключается на следующий символ всякий раз, когда
- спираль достигает угла, или
- текущие буквы печатаются ровно n раз.
Чтобы лучше проиллюстрировать это, я объясню, как генерируется спираль, связанная с первыми тремя словами «thequickbrown».
rooooo
rquuuw
bqttiw
beehiw
kccciw
nnnnnnw
Лиса начинает с «т», идет направо, достигает 1-го угла, красит его «т», затем переключается на «ч» и спускается, достигает 2-го угла, переключается на «е» и идет влево, достигает 3-й угол, переключается на «q» и идет вверх, достигает 4-го угла, переключается на «u» и идет направо, достигает угла и переключается на «i», идет вниз, достигает угла и переключается на «c», идет влево успешно рисует 3 «с» до достижения следующего угла , переключается на «к» и идет влево , сразу достигает угла, переключается на «b» и идет вверх, рисует 2 «б» до достижения следующий угол, переключается на «р»и идет вверх , достигает угла и переключается на «о», идет направо, затем «w», вниз, «n», влево.
Спекуляции
Вы можете принять необязательный ввод, который содержит любую стандартную форму строки
thequickbrownfoxjumpsoverthelazydogthequickbrownfoxjumpsoverthelazydogthequickbrownfoxjumpsoverthelazydog
Ваш вывод должен быть отформатирован как строка и должен идти в STDOUT вместо файлов или STDERR, с символами новой строки, размещенными правильно. Заголовок и конечные пустые строки не имеют значения. Заголовок и пробел в каждой строке разрешены, но должны быть согласованы. Поэтому, если вы добавите 5 пробелов перед одной строкой данного текста, вам нужно будет добавить ровно 5 пробелов перед каждой строкой, чтобы спираль выглядела одинаково.
Это код-гольф , выигрывает наименьшее количество байтов.
Как обычно, здесь применяются лазейки по умолчанию .
Пояснения приветствуются, хотя и не обязательно.
Название отредактировано, чтобы сделать его панграммой для комментария caird coinheringaahing.
Ленивый пес слишком ленив, чтобы появляться в истории.
Я стремлюсь создать строковый вызов, в котором буква для вывода не может быть вычислена с помощью простых функций координат.