Cod sursa(job #1671928)

Utilizator catalinispas66@gmail.comCatalin Ispas [email protected] Data 2 aprilie 2016 11:37:31
Problema Ridicare la putere in timp logaritmic Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <iostream>
#include <fstream>

using namespace std;

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

int b,a,c;

const int mod=1999999973;

long long lgpow(long long baza,int exp)
{
    if (exp==0)
        return 1;
    int semipow=lgpow(a,exp/2);
        semipow=((long long)semipow*semipow)%mod;
    if(exp%2==0)
        return semipow;
    else
        return ((long long)semipow*baza)%mod;
}

/// (a * b) % MOD = (a % MOD * b % MOD) % MOD;

int main()
{
    fin>>a>>b;
    fout<<lgpow(a,b);
    return 0;
}