Pagini recente » Cod sursa (job #2090906) | Cod sursa (job #1156846) | Cod sursa (job #480028) | Cod sursa (job #2560969) | Cod sursa (job #848863)
Cod sursa(job #848863)
#include <fstream>
#include <cstdio>
#define DIM 1000002
using namespace std;
int A[DIM], B[DIM], C[DIM], V[DIM], T[DIM];
int N, i, j, aux;
int main() {
ifstream f("curcubeu.in");
FILE *g = fopen("curcubeu.out","w");
f>>N>>A[1]>>B[1]>>C[1];
if (A[1] > B[1]) {
aux = A[1];
A[1] = B[1];
B[1] = aux;
}
for (i=2;i<N;i++) {
A[i] = (A[i-1] * 1LL * i) % N;
B[i] = (B[i-1] * 1LL * i) % N;
C[i] = (C[i-1] * 1LL * i) % N;
if (A[i] > B[i]) {
aux = A[i];
A[i] = B[i];
B[i] = aux;
}
}
for (i=1;i<=N;i++)
T[i] = i;
for (i=N-1;i>=1;i--) {
for (j=A[i];j<=B[i];) {
if (V[j] == 0) {
V[j] = C[i];
T[j] = B[i]+1;
j++;
} else
j = T[j];
}
}
for (i=1;i<N;i++)
fprintf(g,"%d\n",V[i]);
// g<<V[i]<<"\n";
return 0;
}