Cod sursa(job #2281413)

Utilizator DragosSDragos Sarbu DragosS Data 12 noiembrie 2018 10:47:05
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.43 kb
#include <fstream>

using namespace std;

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

long long int lgput(long long int n,long long int p)
{
    if(p==1)
        return n;
    else if(p%2==0)
    {
        return lgput(n*n,p/2);
    }
    else if(p%2!=0)
    {
        return lgput(n*n,p/2)*n;
    }

    return 0;

}

int main()
{
    long long int n,p;

    f>>n;
    f>>p;

    g<<lgput(n,p);
}