Cod sursa(job #1379127)

Utilizator CartofenAndrei Cartof Cartofen Data 6 martie 2015 16:27:58
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.41 kb
#include <fstream>
using namespace std;

#define MOD 1999999973

ifstream f("lgput.in");
ofstream g("lgput.out");

long long put(int N,int P)
{
    if(P == 0) return 1;
    long long rez = put(N,P>>1);
    rez = rez*rez%MOD;

    if(P%2 == 1) return N*rez%MOD;
    else return rez;
}

int main()
{
    int N,P;
    f>>N>>P;
    g<<put(N,P)<<"\n";

    f.close();
    g.close();
    return 0;
}