Cod sursa(job #256781)

Utilizator ditiBilescu Adrian diti Data 12 februarie 2009 10:18:50
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.39 kb
#include<stdio.h>
#define m 1999999973
long long a,b;

long long put(long long x,long long n)
{
 int result=1;
  while(n)
   {
    if(n%2)
     result=(result%m*x%m)%m;
    x=x%m*x%m;
    n/=2;
    }
  return result;
}

int main()
{
 freopen("lgput.in","r",stdin);
 freopen("lgput.out","w",stdout);
 
 scanf("%lld%lld",&a,&b);
 printf("%lld ",put(a,b));
 
return 0;
}