Cod sursa(job #2495360)

Utilizator MoldovanAndrei1Moldovan Andrei MoldovanAndrei1 Data 19 noiembrie 2019 11:12:03
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.45 kb
#include <bits/stdc++.h>
using namespace std;
long long rid_put(int nr,int exp,int mod)
{
    long long rez=1,val=nr;
    while(exp)
    {
        if(exp&1)rez=rez*val,rez%=mod;
        val=val*val;
        val%=mod;
        exp=exp>>1;
    }
    return rez;
}
int main()
{
    freopen("lgput.in","r",stdin);
    freopen("lgput.out","w",stdout);
    int n,k;
    scanf("%d%d",&n,&k);
    cout<<rid_put(n,k,1999999973);
    return 0;
}