Cod sursa(job #1168544)

Utilizator firilacrocoDaniel firilacroco Data 8 aprilie 2014 21:16:50
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include <iostream>
#include <fstream>

using namespace std;

const int MOD=1999999973;
int n,p;

long long rlp(int a, int b)
{
    long long np;
    if(b==0) return 1;
    if(b==1) return a;
    if(b%2==0) {
        np=rlp(a,b/2)%MOD;
        return (np*np)%MOD;
    }
    return ((rlp(a,(b-1))%MOD)*(a%MOD))%MOD;
}

int main()
{
    ifstream f1("lgput.in");
    ofstream f2("lgput.out");
    f1>>n>>p;
    f2<<rlp(n,p);
    return 0;
}