Cod sursa(job #1310817)

Utilizator lolmanDomuta Dariu lolman Data 7 ianuarie 2015 11:44:55
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.51 kb
#include <iostream>
#include <fstream>
#define mod 1999999973
using namespace std;

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

long long rplg (long long a, long long b)
     {
         if (a<0) return rplg (1/a, -b);
         if (b==0) return 1;
         if (b==1) return a;
         long long sol= (rplg (a, b/2) * rplg (a, b/2))%mod;
         if (b % 2!=0 ) sol= (sol*a)%mod;
         return (sol% mod);
     }
long long n,p;
int main()
{
    f>>n>>p;

    g<<rplg (n,p);
    return 0;
}