Cod sursa(job #902968)

Utilizator ignadariusIgna Darius ignadarius Data 1 martie 2013 17:46:26
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include <iostream>
#include <fstream>
const int mod=1999999973;

using namespace std;

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