Cod sursa(job #2679090)

Utilizator RaresFelixTudose Rares Felix RaresFelix Data 29 noiembrie 2020 16:48:21
Problema Curcubeu Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fi("curcubeu.in");
ofstream fo("curcubeu.out");

int n, A[1000005], B[1000005], C[1000005], S[1000005], O[1000005];

int main()
{
    fi >> n >> A[1] >> B[1] >> C[1];
    for(int i = 2; i <= n - 1; i++)
    {
        A[i] = (A[i-1] * i) % n;
        B[i] = (B[i-1] * i) % n;
        C[i] = (C[i-1] * i) % n;
    }
    int st;
    for (int i = n - 1; i >= 1; i--)
    {
        st = A[i];
        while(st <= B[i])
            if(S[st])st = S[st]+1;
            else {
                O[st] = C[i];
                S[st++] = B[i];
            }
    }
    for (int i = 1; i < n; ++i )
        fo << O[i] << "\n";

    return 0;
}