Cod sursa(job #2174951)

Utilizator dumitrescu_andreiDumitrescu Andrei dumitrescu_andrei Data 16 martie 2018 14:25:06
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include<bits/stdc++.h>
using namespace std;

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

long long n,putere;
const int MOD = 1999999973;

long long pute(long long x,long long p)
{
    long long ans =1;
    while(p)
    {
        if(p%2)
            {
                p--;
                ans=(ans*x)%MOD;
            }
        p/=2;
        x=(x*x)%MOD;
    }
    return ans;
}

int main()
{
    f>>n>>putere;
    g<<pute(n,putere)<<'\n';
    return 0;
}