Cod sursa(job #1839481)

Utilizator SagunistuStrimbu Alexandru Sagunistu Data 2 ianuarie 2017 22:42:40
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.42 kb
#include <fstream>
#define mod 1999999973

using namespace std;

ifstream fin("lgput.in");
ofstream fout ("lgput.out");

long long power(long long n,long long p)
{
    if (p == 0)
        return 1;
    long long pw = power(n,p/2)%mod;
    if (p%2==1)
        return (((n*pw)%mod)*pw)%mod;
    else
        return (pw*pw)%mod;
}

int main()
{
    long long n,p;
    fin>>n>>p;
    fout<<power(n,p);
}