Pagini recente » Cod sursa (job #2405749) | Rating Braica Rares Petrisor (rareshdelasm) | Cod sursa (job #1569313) | Cod sursa (job #452992) | Cod sursa (job #1395079)
#include <cstdio>
#include <algorithm>
#define nmax 6000009
using namespace std;
int n,a,b,c;
int A[nmax],B[nmax],C[nmax];
int urm[nmax],cul[nmax];
int main(){
int i,j,st,dr,g,s;
freopen("curcubeu.in","r",stdin);
freopen("curcubeu.out","w",stdout);
scanf("%d%d%d%d",&n,&a,&b,&c);
A[1]=min(a,b);B[1]=max(a,b);C[1]=c;
for(i=2;i<n;i++){
a=(a*i)%n;
b=(b*i)%n;
c=(c*i)%n;
A[i]=min(a,b);B[i]=max(a,b);C[i]=c;
}
for(i=n-1;i>0;i--){
st=A[i];
dr=B[i];
g=C[i];
for(j=st;j<=dr&&j<n;j++){
cul[j]=g;
if(urm[j] < n)j+=urm[j];
}
urm[st]=dr-st;
}
for(i=1;i<n;i++)
printf("%d\n",cul[i]);
return 0;
}