Cod sursa(job #1510620)

Utilizator EduardLatcanEduard Latcan EduardLatcan Data 25 octombrie 2015 13:15:26
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.41 kb
#include <fstream>

using namespace std;

ifstream in ("lgput.in");
ofstream out ("lgput.out");

int main()
{
    long long n,r=1;
    int p;
    in>>n;
    in>>p;
    while (p>1)
    {
      if (p%2==0)
      {
          n=(n*n)%1999999973;
          p=p/2;
      }
      else
     {
         p=p-1;
         r=(r*n)%1999999973;
    }
    }
    n=n*r;
    out<<n%1999999973;
    return 0;
}