Cod sursa(job #2815403)

Utilizator World_shifterMurgu Bogdan World_shifter Data 9 decembrie 2021 16:03:14
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.4 kb
#include <fstream>

using namespace std;

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

long long putere(long long a, int n, int m){
    if(n==0){
        return 1;
    }
    if(n%2!=0){
        return a*putere(a*a%m, (n-1)/2, m)%m;
    }else{
        return putere(a*a%m, n/2, m);
    }
}

int main()
{
    int a,n;
    in>>a>>n;
    out<<putere(a,n,1999999973);
    return 0;
}