Tantangan kode ini akan membuat Anda menghitung jumlah cara untuk mencapai mulai dari menggunakan peta bentuk (dengan bilangan bulat non-negatif), dan melakukannya dalam jumlah langkah minimum.
(Catatan, ini terkait dengan urutan OEIS A307092 .)
Contoh
Jadi misalnya, karena diperlukan tiga peta, dan ada dua urutan berbeda dari tiga peta yang akan mengirim hingga :
Menghasilkan atau .
Nilai contoh
f(2) = 1 (via [])
f(3) = 1 (via [0])
f(4) = 1 (via [1])
f(5) = 1 (via [1,0])
f(12) = 2 (via [0,2] or [2,1])
f(13) = 2 (via [0,2,0] or [2,1,0], shown above)
f(19) = 1 (via [4,0])
f(20) = 2 (via [1,2] or [3,1])
f(226) = 3 (via [2,0,2,1,0,1], [3,2,0,0,0,1], or [2,3,0,0,0,0])
f(372) = 4 (via [3,0,1,0,1,1,0,1,1], [1,1,0,2,0,0,0,1,1], [0,2,0,2,0,0,0,0,1], or [2,1,0,2,0,0,0,0,1])
Tantangan
Tantangannya adalah untuk menghasilkan sebuah program yang mengambil bilangan bulat sebagai input, dan mengeluarkan jumlah jalur yang berbeda dari ke melalui sejumlah peta minimal dalam bentuk .
Ini adalah kode-golf , byte paling sedikit menang.
x -> x + x^j
^
simbol menunjukkan eksponensial. Bisa juga XOR (misalnya C menggunakan^
untuk bitwise XOR).