Cod sursa(job #1529526)

Utilizator savigunFeleaga Dragos-George savigun Data 20 noiembrie 2015 23:35:47
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.41 kb
#include <iostream>
#include <fstream>
using namespace std;

const int m=1999999973;

long long  putere(long long n, int p)
{
    if(p==0)
        return 1;
    if(p%2!=0)
        return (n%m)*(putere(n, p/2))%m;
    return putere((n%m)*(n%m), p/2)%m;

}

int main()
{

unsigned int n, p;

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

in>>n>>p;
out<<putere(n, p)%m;


    return 0;
}