Cod sursa(job #191666)

Utilizator h_istvanHevele Istvan h_istvan Data 27 mai 2008 20:37:13
Problema Ridicare la putere in timp logaritmic Scor 30
Compilator c Status done
Runda Arhiva educationala Marime 0.38 kb
#include <stdio.h>
#define PRIM 1999999973
long long n,p;

long long put(long long p)
{
     if(p==1) return n;
     long long pp=put(p/2);
     if(p % 2) return (pp*pp*n) % PRIM;
     return (pp*pp) % PRIM;
}

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