Tantangan
Tugas Anda dalam pertanyaan ini adalah menulis program atau fungsi bernama yang mengambil bilangan bulat positif n
(lebih besar dari 0) sebagai input melalui STDIN, ARGV atau argumen fungsi dan menghasilkan array melalui STDOUT atau nilai fungsi yang dikembalikan.
Kedengarannya cukup sederhana? Sekarang inilah aturannya
- Array hanya akan berisi bilangan bulat dari
1
hinggan
- Setiap bilangan bulat dari
1
ken
harus diulangx
kali di manax
nilai dari setiap bilangan bulat.
Sebagai contoh:
Memasukkan:
5
Keluaran:
[1, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5]
Array mungkin atau mungkin tidak diurutkan.
Ini adalah kode-golf sehingga pemenang adalah kode terpendek dalam byte.
Bonus
Lipat gandakan skor Anda dengan 0.5
jika tidak ada dua bilangan bulat yang berdekatan di array output Anda sama.
Misalnya untuk n = 5
, satu konfigurasi seperti itu
[5, 4, 5, 4, 3, 4, 5, 2, 5, 3, 1, 2, 3, 4, 5]
/⍨⍳n