Cod sursa(job #1830643)

Utilizator 2016Teo@Balan 2016 Data 16 decembrie 2016 22:55:01
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.39 kb
#include <fstream>


using namespace std;
ifstream in("lgput.in");
ofstream out("lgput.out");
const int mod=1999999973;
int main()
{
    unsigned long long n,p,x=1;
    in>>n>>p;
    while (p) {
        if (p%2==0) {
            p=p/2;
            n=(n*n)%mod;
        }
        else {
            p--;
            x=(x*n)%mod;
        }
    }
    out<<x;


    return 0;
}