Cod sursa(job #932810)

Utilizator RaduGabriel2012Dinu Radu RaduGabriel2012 Data 29 martie 2013 11:52:32
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("lgput.in");
ofstream g("lgput.out");
long long nr,put,m=1999999973;

long long Solve(long long n,long long p)
{ int bit=0; long long sol=1;
  while((1<<bit)<=p)
  { if (p&(1<<bit)) sol=((long long) sol*n)%m;
    n=((long long) n*n)%m;
    bit++;
  }
return (long long) sol;
}

int main()
{   f>>nr>>put;
    g<<(long long)Solve(nr,put);
    return 0;
}