Cod sursa(job #1802501)

Utilizator kasperDorin Puscasu kasper Data 10 noiembrie 2016 14:24:00
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.4 kb
#include<bits/stdc++.h>
#define in "lgput.in"
#define out "lgput.out"
#define mm 1999999973

using namespace std;

ifstream fin(in);
ofstream fout(out);


long long int n,p,x=1;

int main()
{

    fin>>n>>p;
    n=n%mm;
    while(p){
    if(p%2){
        x=(x*n)%mm;
        p--;
    } else{
            n=(n*n)%mm;
            p/=2;
      }
    }
    fout<<x;
    return 0;
}