Cod sursa(job #2169819)

Utilizator tigeraOprea Tereza Emilia tigera Data 14 martie 2018 17:56:40
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.45 kb
#include <fstream>
#define k 1999999973

using namespace std;

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

int a, b;

long long  putere (long long n, long long p)
{
    int x;
    if(p==0)
        return 1;
    else
    {
        x = putere (n, p/2);
        if(p%2 == 0)
            return (x*x)%k;
        else
            return ((x*x)%k)*n %k;
    }
}
int main ()
{
    fin >> a >> b;
    fout << putere (a,b);
}