Cod sursa(job #1014415)

Utilizator mndclaudiuMindrila Claudiu mndclaudiu Data 22 octombrie 2013 17:55:03
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include<iostream>
#include<fstream>
using namespace std;
long N,P;
long putere(long a,long n)
{
    int b=a*a;
    if(n==1) return a;
    if(n==2) return b;
    if(n>2)
    {
        if(n%2) return a*putere(a,(n-1)/2)*putere(a,(n-1)/2);
        else return putere(a,n/2)*putere(a,n/2);
    }
}
int main()
{ifstream f("lgput.in");
 ofstream g("lgput.out");
    f>>N>>P;

    g<<putere(N,P)%1999999973;
    return 0;
}