Pagini recente » Cod sursa (job #1531800) | Cod sursa (job #2413452) | Cod sursa (job #108266) | Cod sursa (job #2181977) | Cod sursa (job #2462658)
#include <bits/stdc++.h>
#define NMAX 1000003
using namespace std;
ifstream fin ("curcubeu.in");
ofstream fout ("curcubeu.out");
int A [NMAX], B [NMAX], C [NMAX];
int N, nxt [NMAX], ans [NMAX];
int main (){
fin >> N;
fin >> A [1] >> B [1] >> C [1];
for (int i = 2; i < N; i ++){
A [i] = (1LL * A [i - 1] * i) % N;
B [i] = (1LL * B [i - 1] * i) % N;
C [i] = (1LL * C [i - 1] * i) % N;
}
for (int i = N - 1; i >= 1; i --){
int st = min (A [i], B [i]);
int dr = max (A [i], B [i]);
while (st <= dr){
if (nxt [st] == 0){
nxt [st] = dr + 1;
ans [st] = C [i];
st ++;
}
else st = nxt [st];
}
}
for (int i = 1; i < N; i ++)
fout << ans [i] << '\n';
return 0;
}