Cod sursa(job #2574897)

Utilizator MoldovanAndrei1Moldovan Andrei MoldovanAndrei1 Data 6 martie 2020 10:35:14
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.54 kb
#include<bits/stdc++.h>
using namespace std;
bitset<1000>a;
const int mod=1999999973;
long long rid_put(int baza,int exp,int mod)
{
    long long rez=1,bb=baza;
    while(exp)
    {
        if(exp&1)
        {
            rez=rez*bb;
            rez%=mod;
        }
        exp=exp>>1;
        bb=bb*bb;
        bb%=mod;
    }
    return rez;
}
int main()
{
    freopen("lgput.in","r",stdin);
    freopen("lgput.out","w",stdout);
    int n,p;
    scanf("%d%d",&n,&p);
    long long t=rid_put(n,p,mod);
    cout<<t;

}