Cod sursa(job #862423)

Utilizator ignadariusIgna Darius ignadarius Data 22 ianuarie 2013 18:11:22
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include <iostream>
#include <fstream>
const int mod=1999999973;
using namespace std;
 long n,p;

long putere(long a,long p,int mod)
{
    long long w;
    if (p==0)
        return 1;
    if (p%2==0)
    {
        w=putere(a,p/2,mod);
        return (w*w)%mod;
    }
    w=putere(a,p-1,mod);
    return (w*a)%mod;
}
int main()
{
	ifstream f("lgput.in");
	ofstream g("lgput.out");
	f>>n>>p;
	g<<putere(n,p,mod);

return 0;
}