Cod sursa(job #700424)

Utilizator horeste12Stoianovici Horatiu Andrei horeste12 Data 1 martie 2012 10:17:50
Problema Ridicare la putere in timp logaritmic Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.39 kb
#include <fstream>
#define modulo 1999999973
using namespace std;

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

unsigned long long n,p;

unsigned long long calc(int x, int p)
{
    unsigned long long y;
    if(p==1)
        return x;
    y=calc(x,p/2);y=y*y%modulo;
    if(p%2)
        return x*y;
    return y;
}
int main()
{
    f>>n>>p;
    g<<calc(n,p);
    return 0;
}