Pagini recente » Cod sursa (job #1539536) | Cod sursa (job #950258) | Cod sursa (job #2700831) | Cod sursa (job #1482810) | Cod sursa (job #1461745)
#include <stdio.h>
#include <stdlib.h>
#define MAXN 1000000
int v[MAXN],a[MAXN],b[MAXN],c[MAXN];
int main(){
FILE*fi,*fout;
int i,j,flag,con,n;
fi=fopen("curcubeu.in" ,"r");
fout=fopen("curcubeu.out" ,"w");
fscanf(fi,"%d%d%d%d" ,&n,&a[1],&b[1],&c[1]);
flag=1;
i=2;
while(flag){
for(j=a[i-1];j<=b[i-1];j++)
v[j]=c[i-1];
a[i]=(a[i-1]*i)%n;
b[i]=(b[i-1]*i)%n;
c[i]=(c[i-1]*i)%n;
j=i-1;
while(j>=0&&(a[j]!=a[i]||b[j]!=b[i]||c[i]!=c[j]))
j--;
if(j>=0)
flag=0;
else{
i++;
con=0;
for(j=1;j<n;j++)
if(v[j]>0)
con++;
if(con==n-1)
flag=0;
}
}
for(i=1;i<n;i++)
fprintf(fout,"%d\n" ,v[i]);
fclose(fi);
fclose(fout);
return 0;
}