Cod sursa(job #2282595)

Utilizator HaesteinnSabau Florin Vlad Haesteinn Data 14 noiembrie 2018 09:49:52
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.5 kb
#include <iostream>
#include <fstream>
using namespace std;

#define MOD 1999999973

ifstream fin("lgput.in");
ofstream fout("lgput.out");

long long lgput(long long n,long long k)
{
    if(k==0)
        return 1;
    if(k==1)
        return n%MOD;
    //long long rasp=lgput(n*n,k/2)%MOD;
    if(k%2==0)
        return (lgput((n*n)%MOD,k/2))%MOD;
    return (n*lgput((n*n)%MOD,k/2))%MOD;
}


int main()
{
    long long n,k;
    fin>>n>>k;
    fout<<lgput(n,k);
    return 0;
}