Cod sursa(job #932342)

Utilizator crudu_denisDenis Crudu crudu_denis Data 28 martie 2013 20:56:18
Problema Curcubeu Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include<fstream>
#include<algorithm>

#define maxn 1000009

using namespace std;
int n,A[maxn],B[maxn],C[maxn],sol[maxn],next[maxn];
int main()
{
    ifstream fin("curcubeu.in");
    ofstream fout("curcubeu.out");
    fin>>n>>A[1]>>B[1]>>C[1];
    int i;
    for(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;
    }
    for(i=1;i<n;i++)
    {
        int a=A[i];
        int b=B[i];
        if(a>b)
            swap(a,b);
        for(int j=a;j<=b;j++)
        {
            if(next[j]==0)
            {
                sol[j]=C[i];
                next[j]=b;
            }
            else
                j=next[j];
        }

    }
    for(i=1;i<n;i++)
        fout<<sol[i]<<'\n';
    return 0;
}