Cod sursa(job #279902)

Utilizator DraStiKDragos Oprica DraStiK Data 13 martie 2009 08:47:20
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.36 kb
#include <stdio.h>
#define ll long long unsigned
#define MOD 1999999973
ll n,p,sol;
int main ()
{
    freopen ("lgput.in","r",stdin);
    freopen ("lgput.out","w",stdout);
    scanf ("%llu%llu",&n,&p);
    for (sol=1 ; p; p>>=1)
    {
        if (p&1)
           sol=(sol*n)%MOD;
          n=(n*n)%MOD; 
    }
    printf ("%llu",sol);
    return 0;    
}