Pagini recente » Cod sursa (job #2915662) | Cod sursa (job #250299) | Cod sursa (job #3161461) | Cod sursa (job #2097800) | 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;
}