Cod sursa(job #796442)

Utilizator FeriCsiki Francisc Alexandru Feri Data 11 octombrie 2012 15:56:29
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.39 kb
#include <iostream>
#include <fstream>

using namespace std;

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

const int R = 1999999973;

long long lgput(long long n, long long p)
{
    if(p==1) return n;

    if(p%2 == 0) return lgput(n*n%R,p/2) ;
    return lgput(n*n%R,p/2)*n%R;
}
int main () {
     int n , p;
     in>>n>>p;
     out<<lgput(n,p);
     return 0;
}