Pagini recente » Cod sursa (job #1211420) | Cod sursa (job #1239320) | Cod sursa (job #256889) | Cod sursa (job #256625) | Cod sursa (job #1772523)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("curcubeu.in");
ofstream g("curcubeu.out");
#define nmax 1001000
int a[nmax];
int b[nmax];
int c[nmax];
int ans[nmax];
int next[nmax];
int i,s,d,col,n,j;
int main()
{
f>>n>>a[1]>>b[1]>>c[1];
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=1; i<n; ++i)
next[i]=i;
for(i=n-1; i>0; --i)
{
s=a[i];
d=b[i];
col=c[i];
if(s>d)
swap(s,d);
for(j=s; j<=d; ++j)
if(!ans[j])
{
ans[j]=col;
next[j]=d;
}
else
j=next[j];
}
for(i=1; i<n; ++i)
g<<ans[i]<<'\n';
}