Inspiré par ce xkcd
Vous travaillez pour Shazam et ils ont un projet pour vous. Certains clients se plaignent de voir leur application occuper trop de place sur leur téléphone. Ils souhaitent donc que vous codiez une version allégée de l'application. Malheureusement, votre code existant ne peut comprendre que le mot "na" et vous devez le faire rapidement. Ce n'est pas grave, nous ferons de notre mieux avec ce que nous avons.
Le défi
Vous devez écrire un programme complet prenant une entrée utilisateur ou un argument en ligne de commande, puis imprimer le titre et l'artiste de la chanson. Étant donné que nous essayons de corriger les clients qui se plaignent de la taille du programme, votre code doit être aussi court que possible. L'entrée sera une chaîne composée entièrement de na, avec un seul espace entre eux. Minuscules / majuscules est arbitraire. Ceci est considéré comme une entrée valide: Na Na nA na NA
Ceci est une entrée invalide: nah nah NA naNa banana
Vous devez déterminer la chanson en cours de lecture et l’imprimer exactement dans ce format:
Song: <trackname>
Artist: <artist>
Si l'entrée a exactement 8 na, cela correspond à deux chansons distinctes, vous devez donc les imprimer:
Song: Batman Theme
Artist: Neal Hefti
et
Song: Na Na Hey Hey Kiss Him Goodbye
Artist: Steam
Si l'entrée correspond exactement à 10 na, vous devez imprimer:
Song: Katamari Damacy
Artist: Yuu Miyake
Si l'entrée correspond exactement à 11 na, vous devez imprimer:
Song: Hey Jude
Artist: The Beatles
Si la saisie est supérieure ou égale à 12 na, vous devez imprimer
Song: Land Of 1000 Dances
Artist: Wilson Pickett
Enfin, si l'entrée est invalide, s'il y a moins de 8 na ou si l'un des mots n'est pas "na", votre programme ne comprend pas la musique. Donc logiquement, il n'y a qu'une seule chanson possible. Vous devez imprimer:
Song: Africa
Artist: Toto
Comme d'habitude, des failles standard s'appliquent et la réponse la plus courte en octets est gagnante.
na
n'est-il pas? Je viens de l'écouter et je pensais que c'était le cas (en termes de longueur des notes) quarter quarter quarter quarter / eighth sixteenth sixteenth quarter-quarter-quarter / eighth sixteenth quarter-quarter-quarter
, ce qui correspond à 12 na
s.
onnnnnnnnne-one-three-one-a-two-threeeeeeeeeee-one-a-two-threeeeeeee-hey-jude
certainement 11
na na / na na / na na / na na
x2 batman
. J'ai remarqué que la deuxième fois que j'ai vu la bande dessinée.