Cod sursa(job #1318000)

Utilizator Miruna_DMiruna Miruna_D Data 15 ianuarie 2015 14:47:56
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include <iostream>
#include <fstream>
#include <vector>
#define mod 1999999973
using namespace std;
ifstream fin("lgput.in");
ofstream fout("lgput.out");
long long n,p;

long long ridicare(long long n,long long p)
{

     if(p==0) return 1;
    if(p==1) return n;

    if(p%2)
        return  ((ridicare(n,p-1)%mod)*n)%mod;
    else
        return ridicare((n*n)%mod,p/2)%mod;



}
int main()
{
        fin>>n>>p;
       fout<<ridicare(n,p)%mod;


    return 0;
}