Cod sursa(job #1603089)

Utilizator CodrutLemeniCodrut Lemeni CodrutLemeni Data 17 februarie 2016 10:19:51
Problema Ridicare la putere in timp logaritmic Scor 30
Compilator c Status done
Runda Arhiva educationala Marime 0.47 kb
#include <stdio.h>
#include <stdlib.h>
#define N 1999999973

long long n,p;
long long temp;

long long lgput(long long pt){

    if(pt==1){
        return n;
    }
    temp=lgput(pt/2)%N;
    if(pt%2==1){
        return temp*temp*n;
    }else{
        return temp*temp;
    }

}

int main(){


    freopen("lgput.in","r",stdin);
    freopen("lgput.out","w",stdout);

    scanf("%lld%lld",&n,&p);

    printf("%lld",lgput(p)%N);

    return 0;
}