Cod sursa(job #1456246)

Utilizator mariakKapros Maria mariak Data 30 iunie 2015 10:50:32
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.42 kb
#include <cstdio>
#include <algorithm>

using namespace std;
int n,p;
int putere(int a, int n)
{
    int x;
    if (n == 0)
        return 1;
    x =  putere(a * a, n / 2 );
    if (n % 2)
        x *= a;

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