Cod sursa(job #1632434)

Utilizator andrei_udilaandrei udila andrei_udila Data 6 martie 2016 09:53:01
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
#include <iostream>
#include <fstream>
#include <math.h>
using namespace std;
#define MOD 1999999973

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

int p,x;
int putere(int x, int p)
{
    if(p==0) return 1;

    long long ans=putere(x,p/2);

    ans=(ans*ans) %MOD;

    if(p%2==1)
        ans=(ans*x)%MOD;

    return ans % MOD;
}
int main()
{
    fin>>x>>p;
    fout<<putere(x,p)<<"\n";
   /* long long rez=pow(x,p);
    cout<<rez%MOD;
    */
    return 0;
}