Hãy xem xét các số nguyên modulo qở đâu qlà số nguyên tố, một bộ tạo là bất kỳ số nguyên nào 1 < x < qđể x^1, x^2, ..., x^(q-1)bao gồm tất cả q-1các số nguyên giữa 1và q-1. Ví dụ, hãy xem xét các số nguyên modulo 7 (mà chúng tôi viết là Z_7). Sau đó 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 = 1bao gồm tất cả các giá trị 3, 2, 6, 4, 5, 1bao gồm tất cả các số nguyên 1..6theo yêu cầu.
Nhiệm vụ là viết mã nhận đầu vào nvà đầu ra một trình tạo Z_n. Tất nhiên, bạn không thể sử dụng bất kỳ nội dung hoặc thư viện nào thực hiện điều này cho bạn.
Hạn chế duy nhất về hiệu suất của mã của bạn là bạn phải kiểm tra nó để hoàn thành n = 4257452468389.
Lưu ý rằng 2^n có nghĩa là 2sức mạnh của n. Đó là ^đại diện cho cấp số nhân.
1 < x < qlàm cho thử thách imo dễ dàng hơn nhiều.