Cod sursa(job #1220925)

Utilizator raztaapDumitru raztaap Data 18 august 2014 23:49:29
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <cstdio>
int n, x;
int mod=1999999973;
void citire()
{
    scanf("%d%d", &n, &x);
}
int ridp(int n, int x)
{
    int nr=0;
    if(x==0)
        return 1;
    if(x%2==0)
    {
        nr=ridp(n,x/2);
        return ((nr%mod)*(nr%mod))%mod;
    }
    else
    {
        return ((ridp(n, x-1)%mod)*(n%mod))%mod;
    }
}
void rezolva_problema()
{
    int p=0;
    citire();
    p=ridp(n,x)%mod;
    printf("%d\n", p);
}
int main()
{
    freopen("lgput.in", "r", stdin);
    freopen("lgput.out", "w", stdout);
    rezolva_problema();
    return 0;
}