Cod sursa(job #2075910)

Utilizator GabiTulbaGabi Tulba-Lecu GabiTulba Data 25 noiembrie 2017 20:33:26
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <bits/stdc++.h>

#define MaxN 100005
#define INF 2140000000
#define MOD 1999999973

using namespace std;

FILE*IN,*OUT;

int N,P;
int LogPow(int base,int exp)
{
    int ans=1;
    long long p=1;
    for(int i=0;i<=32;i++)
    {
        if(exp&p)
            ans=1LL*ans*base%MOD;
        base=1LL*base*base%MOD;
        p*=2;
    }
    return ans;
}

int main()
{
    IN=fopen("lgput.in","r");
    OUT=fopen("lgput.out","w");

    fscanf(IN,"%d%d",&N,&P);

    fprintf(OUT,"%d",LogPow(N,P));


    return 0;
}