Pagini recente » Cod sursa (job #3360212) | Cod sursa (job #3360205) | Cod sursa (job #3360209) | Cod sursa (job #3360211) | Cod sursa (job #3360203)
#include <fstream>
using namespace std;
ifstream fin("curcubeu.in");
ofstream fout("curcubeu.out");
int n;
struct rb{
int color,next;
}v[1000005];
struct query{
int a,b,c;
}q[1000005];
int main()
{
fin>>n>>q[1].a>>q[1].b>>q[1].c;
v[1].color=-1;
for(int i=2;i<n;i++){
q[i].a=(q[i-1].a*i)%n;
q[i].b=(q[i-1].b*i)%n;
q[i].c=(q[i-1].c*i)%n;
v[i].color=-1;
v[i-1].next=i;
}
for(int i=n-1;i>=1;i--){
int st=min(q[i].a,q[i].b),dr=max(q[i].a,q[i].b);
for(int j=st;j<=dr && j<n;){
if(v[j].color==-1)v[j].color=q[i].c;
j=v[j].next;
v[j].next=dr+1;
}
v[st-1].next=max(dr+1,v[st-1].next);
}
for(int i=1;i<n;i++)fout<<max(v[i].color,0)<<"\n";
return 0;
}