Cod sursa(job #914505)

Utilizator Paula-ElenaPaula-Elena Margarit Paula-Elena Data 14 martie 2013 10:53:32
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include<fstream>
using namespace std;

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

int n, p;

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

int main(){

    fin >> n >> p;
    fout << power(n, p);

    fin.close();
    fout.close();

    return 0;
}