Pagini recente » Cod sursa (job #482098) | Cod sursa (job #218470) | Cod sursa (job #131232) | Cod sursa (job #2496280) | Cod sursa (job #2626768)
#include <bits/stdc++.h>
using namespace std;
ifstream r("curcubeu.in");
ofstream w("curcubeu.out");
int n, a[1000003], b[1000003], c[1000003], complet[1000003], col[1000003], st, dr;
bool viz[1000003];
int main ()
{
r>>n>>a[1]>>b[1]>>c[1];
for(int i=2; i<n; ++i)
{
a[i]=((long long)a[i-1]*i)%n;
b[i]=((long long)b[i-1]*i)%n;
c[i]=((long long)c[i-1]*i)%n;
}
int cn=n;
for(int i=1; i<=n; ++i)
{
complet[i]=i;
}
while(n--)
{
st=min(a[n], b[n]);
dr=a[n]+b[n]-st;
for(int i=st; i<=dr; ++i)
{
if(viz[i]==1){
i=complet[i]-1;
}
else
{
col[i]=c[n];
viz[i]=1;
complet[i]=dr+1;
}
}
}
for(int i=1; i<cn; ++i)
{
w<<col[i]<<"\n";
}
return 0;
}