Cod sursa(job #1577863)

Utilizator vladm98Munteanu Vlad vladm98 Data 23 ianuarie 2016 22:09:32
Problema Al k-lea termen Fibonacci Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.72 kb
#include <fstream>

using namespace std;
ifstream fin ("kfibo.in");
ofstream fout ("kfibo.out");
int k, a, b=1, c=1, d=1, x, y, z, w;
int main()
{
    fin >> k;
    k=k-2;
    while (k>0)
    {
        if (!k%2)
        {
            x=a*a+b*c;
            y=a*b+c*d;
            z=a*c+c*d;
            w=b*c+d*d;
            a=x%666013;
            b=y%666013;
            c=z%666013;
            d=w%666013;
            k=k/2;
        }
        else
        {
            x=a;
            y=a+b;
            z=d;
            w=c+d;
            a=x%666013;
            b=y%666013;
            c=z%666013;
            d=w%666013;
            k--;
        }
    }
    fout << d;
    return 0;
}