Pertimbangkan bilangan bulat modulo di q
mana q
bilangan prima, generator bilangan bulat apa pun 1 < x < q
sehingga x^1, x^2, ..., x^(q-1)
mencakup semua q-1
bilangan bulat di antara 1
dan q-1
. Sebagai contoh, perhatikan bilangan bulat modulo 7 (yang kami tulis sebagai Z_7
). Kemudian 3, 3^2 mod 7 = 2, 3^3 = 27 mod 7 = 6, 3^4 = 81 mod 7 = 4, 3^5 = 243 mod 7 = 5, 3^6 = 729 mod 7 = 1
mencakup semua nilai 3, 2, 6, 4, 5, 1
mencakup semua bilangan bulat 1..6
sesuai kebutuhan.
Tugasnya adalah menulis kode yang membutuhkan input n
dan output generator Z_n
. Anda tentu saja tidak dapat menggunakan builtin atau pustaka yang melakukan ini untuk Anda.
Satu-satunya batasan pada kinerja kode Anda adalah bahwa Anda harus mengujinya sampai selesai n = 4257452468389
.
Perhatikan itu 2^n
berarti 2
kekuatan n
. Itu ^
mewakili eksponensial.
1 < x < q
membuat tantangan imo jauh lebih mudah.