Cod sursa(job #1671946)

Utilizator luci2000lup lucia luci2000 Data 2 aprilie 2016 11:41:58
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include <iostream>
#include <fstream>

using namespace std;

#define mod 1999999973

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

int lg(int n, int p) {
    if(p == 0)
        return 1;
    int semip=lg(n,p/2);
    semip=((long long)semip*semip)%mod;
    if(p%2==0)
        return semip;
    else
        return ((long long)semip * n)%mod;
}

int main()
{
    int x,y;
    fin>>x>>y;
    fout<<lg(x,y) << '\n';
}