Cod sursa(job #1335155)

Utilizator cristinelulCristian Virga cristinelul Data 5 februarie 2015 09:32:12
Problema Ridicare la putere in timp logaritmic Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.4 kb
#include <iostream>

using namespace std;

int x,n,N,i,modulo=1999999973;
long int calcul(int n)
{
    if(n==1)
        return x%modulo;
    else
    {
        if(n%2==0)
        {
            i=calcul(n/2);
            return (i*i)%modulo;
        }
        else
            return (x*calcul(n-1))%modulo;
    }
}
int main()
{
    cin>>x>>N;
    cout<<calcul(N);
    return 0;
}