Pagini recente » Cod sursa (job #1905662) | Cod sursa (job #2118415) | Cod sursa (job #570260) | Cod sursa (job #2413365) | Cod sursa (job #2462662)
#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;
if (A [i] > B [i])
swap (A [i], B [i]);
}
for (int i = N - 1; i >= 1; i --){
for (int ind = A [i]; ind <= B [i];){
if (nxt [ind] == 0){
nxt [ind] = B [i] + 1;
ans [ind] = C [i];
ind ++;
}
else ind = nxt [ind];
}
}
for (int i = 1; i < N; i ++)
fout << ans [i] << '\n';
return 0;
}