Cod sursa(job #560062)

Utilizator acelasi7Tudor Maxim acelasi7 Data 18 martie 2011 12:13:41
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.45 kb
#include<fstream>
using namespace std;
#define mod 1999999973

long long fct(long long nr,long long putere)
{
    if(!putere)
        return 1;
    long long aux=(fct(nr,putere/2)%mod);
    if(putere%2)
        return ((nr%mod)*((aux*aux)%mod))%mod;
    return (aux*aux)%mod;
}
int main()
{
    long long n,p,sol;
    ifstream in("lgput.in");
    ofstream out("lgput.out");
    in>>n>>p;
    sol=fct(n,p);
    out<<sol<<'\n';
    return 0;
}