Cod sursa(job #1644274)

Utilizator sebinechitasebi nechita sebinechita Data 9 martie 2016 22:19:05
Problema Rsir Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.99 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("rsir.in");
ofstream fout("rsir.out");


int main()
{
    int t0, t1, a, b, x, y, z, m, n, ix, iy, i, iz;
    fin >> t0 >> t1 >> a >> b >> x >> y >> z >> m >> n;
    t0 %= m;
    t1 %= m;
    ix = t0;
    iy = t1;
    for(i = 2 ; ; i++)
    {
      //  cout << ix << " " << iy << "\n";
        iz = (1ll * a * ix * ix + 1ll * b * iy * iy + 1ll * x * ix + 1ll * y * iy + 1ll * z) % m;
        ix = iy;
        iy = iz;
        if(ix == t0 && iy == t1)
            break;
    }
    i--;
    n %= i;
    if(n == 0)
    {
        fout << t0 << "\n";
    }
    else if(n == 1)
    {
        fout << t1 << '\n';
    }
    else
    {
        ix = t0;
        iy = t1;
        for(i = 2 ; i <= n ; i++)
        {
            iz = (1ll * a * ix * ix + 1ll * b * iy * iy + 1ll * x * ix + 1ll * y * iy + 1ll * z) % m;
            ix = iy;
            iy = iz;
        }
        fout << iz << "\n";
    }

}