Anda harus menulis sebuah program atau fungsi yang memberikan tiga bilangan bulat positif n b k
sebagai input output atau mengembalikan k
digit terakhir sebelum nol trailing di b
representasi dasar n!
.
Contoh
n=7 b=5 k=4
factorial(n) is 5040
5040 is 130130 in base 5
the last 4 digits of 130130 before the trailing zeros are 3013
the output is 3013
Memasukkan
- 3 bilangan bulat positif di
n b k
mana2 <= b <= 10
. - Urutan bilangan bulat input dapat dipilih secara sewenang-wenang.
Keluaran
- Daftar digit yang dikembalikan atau dikeluarkan sebagai integer atau daftar integer.
- Angka nol di depan adalah opsional.
- Solusi Anda harus menyelesaikan contoh uji kasus di bawah satu menit di komputer saya (saya hanya akan menguji kasus tutup. Saya memiliki PC di bawah rata-rata.).
Contohnya
Tes baru ditambahkan untuk memeriksa kebenaran pengiriman. (Mereka bukan bagian dari aturan runtime di bawah 1 menit.)
Input => Output (dengan pilihan menghilangkan nol terkemuka)
3 10 1 => 6
7 5 4 => 3013
3 2 3 => 11
6 2 10 => 101101
9 9 6 => 6127
7 10 4 => 504
758 9 19 => 6645002302217537863
158596 8 20 => 37212476700442254614
359221 2 40 => 1101111111001100010101100000110001110001
New tests:
----------
9 6 3 => 144
10 6 3 => 544
Ini adalah kode-golf, sehingga entri terpendek menang.
7 5 3
menghasilkan "013" atau "13"?
7 10 4
test case yang akan saya katakan13
n
atau k
? Atau bisakah kita membatasi mereka pada rentang tipe integer bahasa?