Cod sursa(job #3201069)

Utilizator DomnulMilandruMilandru Nicon-David DomnulMilandru Data 6 februarie 2024 18:29:20
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.49 kb

#include <fstream>
using namespace std;
ifstream cin("lgput.in");
ofstream cout("lgput.out");
const long long M=1999999973;
long long putere(long long a,long long b)
{
    if(!b)
       return 1;
    else
       {
           long long p=putere(a,b/2);
           p=(p*p*1LL)%M;
           if(b%2==1)
              return (p*a*1LL)%M;
            else
              return p;
       }
}
long long a,b;
int main()
{
    cin>>a>>b;
    cout<<putere(a,b);

    return 0;
}