Cod sursa(job #1005161)

Utilizator edihackpackEdi Pop edihackpack Data 4 octombrie 2013 13:31:43
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.36 kb
#include <cstdio>

int exp(int a, int b)
{
    if(!b)
        return 1;
    if(b == 1)
        return a;
    if(!(b%2))
        return exp(a*a,b/2);
    else
        return a*exp(a*a,(b-1)/2);

}

int main()
{
    freopen("lgput.in","r",stdin);
    freopen("lgput.out","w",stdout);
    int n,x;
    scanf("%d%d",&n,&x);
    printf("%d",exp(n,x));
}