Cod sursa(job #2412456)

Utilizator andreitabaraandrei2004 andreitabara Data 22 aprilie 2019 11:44:50
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.47 kb
#include <fstream>
#include <iostream>

using namespace std;
ifstream in ("lgput.in");
ofstream out ("lgput.out");
unsigned long long int rise(unsigned long long int a,unsigned long long int b)
{
     unsigned long long int x;
     if (b==0) return 1;
     else if (b==1) return a;
     else if (b%2==0) rise(a*a,b/2);
     else if (b%2==1) rise(a*a,(b-1)/2);
}
int main()
{unsigned long long int a,b;
 in>>a>>b;
 out<<rise(a,b)%1999999973;
    return 0;
}