Toutes nos félicitations! Vous venez d'être embauché par la NASA pour travailler sur le nouveau projet Horizons 2.
Malheureusement, il y a eu d'énormes compressions budgétaires récemment, donc la direction a décidé de simuler tout le survol de Pluton prévu (comme ils l'ont fait pour les alunissages dans les années 70).
Votre tâche consiste à écrire un programme qui acceptera comme entrée une date au format yyyymmdd
et fournira une fausse photographie de Pluton pour cette date. Vous pouvez supposer que la date entrée sera en 2015 ou 2016.
La photographie est une grille 15x15 de caractères ASCII. Les caractères sur la grille ont leurs coordonnées x et y dans la plage [-7, 7]
- le caractère en haut à gauche est à (-7, -7)
tandis que le caractère en bas à droite est à (7, 7)
.
La photographie sera calculée selon les règles suivantes:
- La sonde sera la plus proche de Pluton le 25/12/2015
- La distance
d
à Pluton est donnée par cette formule:square root of ((difference in days to christmas) ^ 2 + 10)
- Le rayon
r
de l'image de Pluton sur la photo est donné par:22 / d
- Un caractère avec des coordonnées
(x, y)
sur la grille doit être défini sur#
ifx^2 + y^2 <= r^2
; sinon, il doit être réglé sur espace. - Il y a des étoiles à des positions
(-3, -5)
,(6, 2)
,(-5, 6)
,(2, 1)
,(7, -2)
. Les étoiles sont représentées par un point.
, et elles sont bien sûr cachées par Pluton.
Une dernière chose: le conseil d'administration de la NASA est parvenu à la conclusion que la découverte de la vie sur Pluton entraînerait probablement une augmentation substantielle du budget. Votre programme devrait ensuite ajouter des indices de vie sur Pluton:
- Lorsque la distance à Pluton est <= 4, ajoutez un plutonien aux coordonnées
(-3,-1)
:(^_^)
Exemple de photo à saisir 20151215
: (votre code doit avoir toutes les nouvelles lignes comme ce code)
.
# .
###
#####
###.
# .
.
Photographie pour entrée 20151225
:
#######
#########
###########
#############
#############.
###(^_^)#####
#############
#############
#############
#############
###########
#########
. #######
À titre de comparaison, voici une photo du satellite Hydra de Pluton prise par New Horizons. Les différences sont à peine perceptibles avec notre art ASCII.
C'est le golf de code, donc le code le plus court en octets gagne!
`
s en faveur de <pre><code>
; n'hésitez pas à revenir en arrière si vous ne l'aimez pas.
You can assume the entered date will be in the year 2015 or 2016.
Mais alors pourquoi spécifier une année?