// Problem 1: Linear Congruential Generator (LCG)
#include <bits/stdc++.h>
using namespace std;
int main()
{
int a, x, c, m;
cin >> a >> x >> c >> m;
for (int i = 1; i <= 10; i++)
{
x = (a * x + c) % m;
cout << x << " ";
}
return 0;
}
/*
1. What is the sequence of generated random numbers?
= 8 11 10 5 12 15 14 9 0 3
2. Normalize them to the range [0, 1).
= 0.08 0.11 0.1 0.05 0.12 0.15 0.14 0.09 0 0.03
3. Are there any repetitions in the sequence?
= No
*/
Ly8gUHJvYmxlbSAxOiBMaW5lYXIgQ29uZ3J1ZW50aWFsIEdlbmVyYXRvciAoTENHKQoKI2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpCnsKICAgIGludCBhLCB4LCBjLCBtOwogICAgY2luID4+IGEgPj4geCA+PiBjID4+IG07CiAgICBmb3IgKGludCBpID0gMTsgaSA8PSAxMDsgaSsrKQogICAgewogICAgICAgIHggPSAoYSAqIHggKyBjKSAlIG07CiAgICAgICAgY291dCA8PCB4IDw8ICIgIjsKICAgIH0KICAgIHJldHVybiAwOwp9CgovKgoKMS4gV2hhdCBpcyB0aGUgc2VxdWVuY2Ugb2YgZ2VuZXJhdGVkIHJhbmRvbSBudW1iZXJzPwo9IDggMTEgMTAgNSAxMiAxNSAxNCA5IDAgMwoKMi4gTm9ybWFsaXplIHRoZW0gdG8gdGhlIHJhbmdlIFswLCAxKS4KPSAwLjA4IDAuMTEgMC4xIDAuMDUgMC4xMiAwLjE1IDAuMTQgMC4wOSAwIDAuMDMKCjMuIEFyZSB0aGVyZSBhbnkgcmVwZXRpdGlvbnMgaW4gdGhlIHNlcXVlbmNlPwo9IE5vCgoqLwoK