Cod sursa(job #2262272)

Utilizator livliviLivia Magureanu livlivi Data 17 octombrie 2018 09:41:39
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.33 kb
#include<fstream>
#define M 1999999973LL
using namespace std;

ifstream cin("lgput.in");
ofstream cout("lgput.out");

long long lgPut(long long a,long long n){
    if (n==0) return 1;
    else
    if (n&1) return (a*lgPut(a,n-1))%M;
    else return lgPut((a*a)%M,n/2);
}

int main(){
	int n,p;
	cin>>n>>p;
	cout<<lgPut(n,p);
	return 0;
}