Cod sursa(job #2282581)

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

#define MOD 1999999973

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

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


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