Cod sursa(job #3130204)

Utilizator alexvali23alexandru alexvali23 Data 17 mai 2023 01:08:24
Problema Al k-lea termen Fibonacci Scor 20
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>
#define MOD 666013
using namespace std;
ifstream f("kfib.in");
ofstream g("kfib.out");
long fibonacciModulo(long long n, int m)
{
    // Getting the period
    long pisanoPeriod = 1190833032;
    n = n % pisanoPeriod;
    long prev = 0;
    long curr = 1;
    if(n == 0)
        return 0;
    else
        if(n == 1)
            return 1;
    for(int i = 0; i < n - 1; i++)
    {
        long temp = 0;
        temp = curr;
        curr = (prev + curr) % m;
        prev = temp;
    }
    return curr % m;
}

int main()
{
    int n;
    f >> n;
    g << (fibonacciModulo(n, MOD));
    return 0;
}