Поздравляем! Вы только что были наняты НАСА для работы над новым проектом Horizons 2.
К сожалению, в последнее время произошли огромные сокращения бюджета, поэтому высшее руководство решило подделать весь запланированный полет Плутона (как они это сделали для посадок на Луну в 70-х годах).
Ваша задача - написать программу, которая будет принимать в качестве входных данных дату в формате yyyymmddи предоставит поддельную фотографию Плутона на эту дату. Вы можете предположить, что введенная дата будет в 2015 или 2016 году.
Фотография представляет собой сетку 15x15 символов ASCII. Символы в сетке имеют свои x- и y-координаты в пределах диапазона [-7, 7]- верхний левый символ находится в (-7, -7)то время как нижний правый символ в (7, 7).
Фотография будет рассчитана по следующим правилам:
- Зонд будет ближайшим к Плутону 25/12/2015
- Расстояние
dдо Плутона определяется по формуле:square root of ((difference in days to christmas) ^ 2 + 10) - Радиус
rизображения Плутона на фото:22 / d - Символ с координатами
(x, y)на сетке должен быть установлен в#ifx^2 + y^2 <= r^2; в противном случае он должен быть установлен на пробел. - Есть звезды в положениях
(-3, -5),(6, 2),(-5, 6),(2, 1),(7, -2). Звезды представлены точкой., и они, конечно, скрыты Плутоном.
Еще одна вещь: совет НАСА пришел к выводу, что открытие жизни на Плутоне, вероятно, приведет к существенному увеличению бюджета. Ваша программа должна добавить подсказки жизни на Плутоне:
- Когда расстояние до Плутона <= 4, добавьте плутоний в координатах
(-3,-1):(^_^)
Пример фотографии для ввода 20151215: (Ваш код должен иметь все новые строки, как этот код)
.
# .
###
#####
###.
# .
.
Фотография для ввода 20151225:
#######
#########
###########
#############
#############.
###(^_^)#####
#############
#############
#############
#############
###########
#########
. #######
Для сравнения, вот фотография спутника Плутона "Гидра", сделанная New Horizons. Различия едва заметны с нашим искусством ASCII.
Это код гольф, поэтому выигрывает самый короткий код в байтах!
`с в пользу <pre><code>; не стесняйтесь откатиться, если вам это не нравится.
You can assume the entered date will be in the year 2015 or 2016.Но тогда зачем вообще указывать год?
