pengantar
Tidakkah Anda membencinya ketika seseorang mengunggah album yang Anda sukai ke YouTube, tetapi uraiannya hanya berisi daftar lagu ? Seperti ini:
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
Sekarang Anda tidak tahu kapan Morning Bell dimulai kecuali jika Anda menjumlahkan beberapa kali di kepala Anda! Biasanya, beberapa jiwa baik akan datang dan meninggalkan tabel waktu yang berguna di bagian komentar (ditakuti), yang terlihat seperti ini:
(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
Spesifikasi
Tugas Anda adalah menulis program atau fungsi yang menggunakan daftar lagu sebagai input dan tabel waktu sebagai output.
- Anda dapat memilih untuk membaca input dari STDIN, atau string argumen, atau daftar baris argumen. Demikian pula, Anda dapat memilih untuk mencetak output ke STDOUT, atau mengembalikan string, atau mengembalikan daftar baris. Jika gagal, lakukan apa pun yang masuk akal untuk bahasa Anda.
Anda dapat menganggap setiap baris input memiliki format
(\d+)\. [A-Za-z0-9 ]{1,100} - (\d+):(\d\d)
. Untuk regex-gangguan, ini pada dasarnya berarti Anda dapat mengasumsikan setiap baris diformat dengan baik (seperti di atas) dan judul lagu hanya terdiri dari karakter dan spasi ASCII alfanumerik , dan panjangnya tidak lebih dari 100 byte.- Panjang lintasan selalu setidaknya
0:01
dan tidak lebih dari59:59
. - Nomor trek meningkat urutan, mulai dari
1
, dan menghitung hingga tidak lebih dari99
. - Total panjang album tidak lebih dari
9:59:59
.
Ini adalah kode-golf , jadi kode terpendek (dalam byte) menang.
Kasus cobaan
Program Anda harus benar melakukan konversi yang disajikan dalam pendahuluan (Radiohead's Kid A ). Ini adalah test case yang lebih besar (Sufjan Stevens ' Illinois 1 ) dengan string panjang yang juga harus dikerjakan oleh program Anda
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
Output yang benar adalah:
(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
Papan peringkat
Agar skor Anda muncul di papan tulis, itu harus dalam format ini:
# Language, Bytes
1. Permintaan maaf kepada Sufjan, yang nama treknya luar biasa, saya harus sedikit berbelit-belit agar sesuai dengan format sederhana masalah ini terbatas.
(h:mm:ss) Track Name
, segera diikuti oleh baris baru.