Cod sursa(job #1220923)

Utilizator raztaapDumitru raztaap Data 18 august 2014 23:44:27
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <cstdio>
int n, x;
int mod=1999999973;
void citire()
{
    scanf("%d%d", &n, &x);
}
int ridp(int n, int x)
{
    if(x==0)
        return 1;
    if(x%2==0)
        return ((ridp(n, x/2)%mod)*(ridp(n, x/2)%mod))%mod;
    else
        return ((((ridp(n, x/2)%mod)*(ridp(n, x/2)%mod))%mod)*n)%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;
}