Cod sursa(job #2639407)

Utilizator Catalin007Botezat Catalin Catalin007 Data 1 august 2020 22:21:37
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.39 kb
#include <bits/stdc++.h>
#define ll long long

using namespace std;
const ll mod=1999999973;
ifstream fin("lgput.in");
ofstream fout("lgput.out");
ll put(int n, ll p){
    ll sol=1;
for(int i=0;(1<<i)<=p;++i)
{
    if(((1<<i)& p) >0) sol=(sol*n)%mod;

        n=(n*n)%mod;
}
return sol;
}
int main()
{
    int n; ll p;
    fin>>n>>p;

    fout<<put(n,p);
    return 0;
}