Cod sursa(job #1888659)

Utilizator StefanIonescuStefan Ionescu StefanIonescu Data 22 februarie 2017 11:48:54
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include<fstream>
using namespace std;
long long int  n,p;
ifstream in("lgput.in");
ofstream out("lgput.out");
const int f=1999999973;
long long int ridicarelaputere(long long int a,long long int b)
{
    if(b==0)
        return 1;
    else
    {
        if(b%2==0)
             return ridicarelaputere(a*a%f,b/2);
        else
            return ridicarelaputere(a*a%f,b/2)*a%f;
    }
}
int main()
{
    in>>n>>p;
    out<<ridicarelaputere(n,p);
}