introduction
Ne détestez-vous pas que quelqu'un télécharge un album que vous aimez sur YouTube, mais la description ne contient qu'une liste de pistes ? Comme ça:
1. Everything in Its Right Place - 4:11
2. Kid A - 4:44
3. The National Anthem - 5:50
4. How to Disappear Completely - 5:55
5. Treefingers - 3:42
6. Optimistic - 5:16
7. In Limbo - 3:31
8. Idioteque - 5:09
9. Morning Bell - 4:29
10. Motion Picture Soundtrack - 6:59
Maintenant, vous ne savez pas quand Morning Bell commence, sauf si vous résumez plusieurs fois dans votre tête! Habituellement, une bonne âme viendra et laissera un calendrier pratique dans la section des commentaires (redoutés), qui ressemble à ceci:
(0:00:00) Everything in Its Right Place
(0:04:11) Kid A
(0:08:55) The National Anthem
(0:14:45) How to Disappear Completely
(0:20:40) Treefingers
(0:24:22) Optimistic
(0:29:38) In Limbo
(0:33:09) Idioteque
(0:38:18) Morning Bell
(0:42:47) Motion Picture Soundtrack
spécification
Votre tâche consiste à écrire un programme ou une fonction qui prend une liste de pistes en entrée et un calendrier en sortie.
- Vous pouvez choisir de lire l'entrée de STDIN, ou une chaîne d'arguments, ou une liste d'arguments de lignes. De même, vous pouvez choisir d'imprimer la sortie sur STDOUT, ou renvoyer une chaîne, ou renvoyer une liste de lignes. A défaut, faites tout ce qui a du sens pour votre langue.
Vous pouvez supposer que chaque ligne d'entrée a le format
(\d+)\. [A-Za-z0-9 ]{1,100} - (\d+):(\d\d)
. Pour les personnes avec des regex, cela signifie essentiellement que vous pouvez supposer que chaque ligne est bien formatée (comme ci-dessus) et que les titres des chansons ne sont composés que de caractères et d'espaces alphanumériques ASCII et ne dépassent pas 100 octets.- La longueur d'une piste est toujours au moins
0:01
et pas plus59:59
. - Les numéros de piste augmentent l'ordre, en commençant par
1
, et en comptant jusqu'à pas plus de99
. - La durée totale d'un album ne dépasse pas
9:59:59
.
Il s'agit de code-golf , donc le code le plus court (en octets) l'emporte.
Cas de test
Votre programme doit effectuer correctement la conversion présentée dans l'introduction (Radiohead's Kid A ). Voici un cas de test plus grand (Sufjan Stevens ' Illinois 1 ) avec de longues chaînes sur lesquelles votre programme devrait également travailler:
1. Concerning the UFO Sighting Near Highland Illinois - 2:08
2. The Black Hawk War - 2:14
3. Come On Feel the Illinoise - 6:45
4. John Wayne Gacy Jr - 3:19
5. Jacksonville - 5:24
6. A Short Reprise for Mary Todd Who Went Insane but for Very Good Reasons - 0:47
7. Decatur or Round of Applause for Your Stepmother - 3:03
8. One Last Whoo Hoo for the Pullman - 0:06
9. Chicago - 6:04
10. Casimir Pulaski Day - 5:53
11. To the Workers of the Rock River Valley Region - 1:40
12. The Man of Metropolis Steals Our Hearts - 6:17
13. Prairie Fire That Wanders About - 2:11
14. A Conjunction of Drones Simulating the Way - 0:19
15. The Predatory Wasp of the Palisades Is Out to Get Us - 5:23
16. They Are Night Zombies They Are Neighbors They Have Come Back from the Dead Ahhhh - 5:09
17. Lets Hear That String Part Again Because I Dont Think They Heard It All the Way Out in Bushnell - 0:40
18. In This Temple as in the Hearts of Man for Whom He Saved the Earth - 0:35
19. The Seers Tower - 3:53
20. The Tallest Man the Broadest Shoulders - 7:02
21. Riffs and Variations on a Single Note - 0:46
22. Out of Egypt into the Great Laugh of Mankind and I Shake the Dirt from My Sandals as I Run - 4:21
La sortie correcte est:
(0:00:00) Concerning the UFO Sighting Near Highland Illinois
(0:02:08) The Black Hawk War
(0:04:22) Come On Feel the Illinoise
(0:11:07) John Wayne Gacy Jr
(0:14:26) Jacksonville
(0:19:50) A Short Reprise for Mary Todd Who Went Insane but for Very Good Reasons
(0:20:37) Decatur or Round of Applause for Your Stepmother
(0:23:40) One Last Whoo Hoo for the Pullman
(0:23:46) Chicago
(0:29:50) Casimir Pulaski Day
(0:35:43) To the Workers of the Rock River Valley Region
(0:37:23) The Man of Metropolis Steals Our Hearts
(0:43:40) Prairie Fire That Wanders About
(0:45:51) A Conjunction of Drones Simulating the Way
(0:46:10) The Predatory Wasp of the Palisades Is Out to Get Us
(0:51:33) They Are Night Zombies They Are Neighbors They Have Come Back from the Dead Ahhhh
(0:56:42) Lets Hear That String Part Again Because I Dont Think They Heard It All the Way Out in Bushnell
(0:57:22) In This Temple as in the Hearts of Man for Whom He Saved the Earth
(0:57:57) The Seers Tower
(1:01:50) The Tallest Man the Broadest Shoulders
(1:08:52) Riffs and Variations on a Single Note
(1:09:38) Out of Egypt into the Great Laugh of Mankind and I Shake the Dirt from My Sandals as I Run
Classement
Pour que votre score apparaisse sur le tableau, il doit être dans ce format:
# Language, Bytes
1. Toutes mes excuses à Sufjan, dont j'ai dû modifier un peu les noms de pistes pour les adapter au format simple auquel ce problème est limité.
(h:mm:ss) Track Name
suivi immédiatement d'une nouvelle ligne.