Cod sursa(job #2504877)

Utilizator RamanujanNeacsu Mihnea Ramanujan Data 5 decembrie 2019 18:23:42
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.46 kb
#include <fstream>

using namespace std;
long long lgput(long long n, long long exp)
{
   long long p=1;
   while(exp!=0)
   {
       if(exp%2==1)
       {
         p=(p*n)%1999999973;
         exp--;
       }
       n=(n*n)%1999999973;
       exp/=2;
   }
   return p;
}
ifstream fin("lgput.in");
ofstream fout("lgput.out");
int main()
{
    long long n, p; fin>>n>>p;
    fout<<lgput(n, p);
    fin.close();
    fout.close();
    return 0;
}