Tujuan dari tantangan ini adalah untuk mengambil array bilangan bulat positif, dan menghitung indeksnya, mengelompokkan elemen-elemen seperti.
Pencacahan tanpa duplikat dilakukan dengan hanya mengeluarkan array pasangan (value, index)
, misalnya, [3, 4, 13, 9, 2]
=> [[3,1],[4,2],[13,3],[9,4],[2,5]]
.
Namun, jika elemen yang diberikan muncul kedua kalinya, itu tidak diberikan pasangannya sendiri, tetapi malah ditambahkan ke grup kejadian pertama. Jika dalam contoh di atas kita mengganti 9 dengan 3, maka dalam output kita akan menghapus [9,4]
dan mengganti [3,1]
dengan [3,1,4]
.
Dalam output, grup harus dipesan berdasarkan kemunculan pertama mereka, dan indeks harus dalam urutan menaik. Elemen harus terlebih dahulu dalam grup, sebelum indeksnya. Output mungkin 0 atau 1 diindeks. Anda dapat menganggap array memiliki setidaknya satu elemen.
Kasus uji:
Input | Output (One-indexed)
[3, 2, 2, 3] | [[3, 1, 4], [2, 2, 3]]
[17] | [[17, 1]]
[1, 1] | [[1, 1, 2]]
[1, 1, 2] | [[1, 1, 2], [2, 3]]
[1, 2, 3, 4] | [[1, 1], [2, 2], [3, 3], [4, 4]]
[1, 1, 1, 1] | [[1, 1, 2, 3, 4]]
Ini adalah kode-golf , byte terkecil menang!
[[3, [1, 4]], [2, [2, 3]]]
?
[[17,"1"]]
? (Belum tahu apakah saya bisa menyimpan byte dengan cara itu, masih bekerja di sana!)