Diberikan input dari string yang seluruhnya terdiri dari q
s yang mewakili not seperempat dan e
s yang mewakili not seperdelapan, menampilkan indeks not seperempat yang disinkronkan.
Sinkronisasi itu rumit, tetapi untuk tujuan tantangan ini, definisi kami tentang "disinkronkan" akan sangat sederhana: seperempat not yang dimulai pada "off-beat" —yaitu, ketukan dihitung sebagai "dan" dalam n / 4 waktu.
Sebagai alternatif, ini dapat didefinisikan sebagai setiap not seperempat yang didahului dengan jumlah ganjil nota kedelapan. Misalnya, catatan yang ditandai dengan di *
bawah ini dianggap sinkop, dan indeksnya juga ditampilkan:
eqqeqqeqqe
** **
12 78
Output: 1 2 7 8
Masukan akan selalu terdiri dari seluruh jumlah pengukuran dalam waktu 4/4 (not seperempat adalah seperempat ukuran, dan not kedelapan adalah kedelapan ukuran). (Input juga tidak akan pernah kosong.) Output dapat berupa string tunggal dengan elemen yang dipisahkan oleh pembatas yang tidak mengandung angka atau array / daftar / dll. Output mungkin berbasis 1 (yaitu indeks pertama adalah 1 bukan 0) jika Anda inginkan, dan mungkin juga dalam basis numerik apa pun (unary, desimal, dll.).
Karena ini adalah kode-golf , kode terpendek dalam byte akan menang.
Kasus uji:
In Out
-----------------------------------------------
eqqqe 1 2 3
qeqeq 2
qqqeqqeeeeqeqeqeqqeqqeqq 4 5 10 14 19 20
eeeeeqeeqeeqqqqeqeqeeqe 5 8 11 12 13 14 18 21
qqqq <none>
eeeeeeee <none>
'eqqqe'
alih-aliheqqqe