Pagini recente » Cod sursa (job #705853) | Cod sursa (job #2590930) | Cod sursa (job #1406069) | Cod sursa (job #1954064) | Cod sursa (job #86870)
Cod sursa(job #86870)
#include <cstdio>
#define maxn 1000001
int a[maxn], b[maxn],c[maxn], next[maxn], color[maxn];
int A, B, C, N;
int main()
{
freopen("curcubeu.in","r",stdin);
scanf("%d %d %d %d\n", &N, &A, &B, &C);
a[1]=A;
b[1]=B;
c[1]=C;
int i,j, p, q;
for(i=2;i<N;++i)
{
a[i]=(a[i-1]*i)%N;
b[i]=(b[i-1]*i)%N;
c[i]=(c[i-1]*i)%N;
}
for(i=N-1;i>=1;--i)
{
A=a[i]<?b[i];
B=b[i]>?a[i];
C=c[i];
for(j=A;j<=B;)
{
if(!next[j]) { next[j]=B+1; color[j]=C; ++j;}
else j=next[j];
}
}
freopen("curcubeu.out","w",stdout);
for(i=1;i<N;++i)printf("%d\n", color[i]);
return 0;
}