Cod sursa(job #1862253)

Utilizator abccnuCamelia Zalum abccnu Data 29 ianuarie 2017 17:57:57
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
#include <iostream>
#include <fstream>
using namespace std;

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

const int MOD = 1999999973;
unsigned int n, p;

int putere(unsigned int n ,unsigned int p)
{
    if (!p) return 1;

    int aux=putere(n , p/2) % MOD;

    if (p % 2) return (((1LL * n) % MOD * aux ) % MOD * aux) % MOD;

    if (p % 2 == 0) return (1LL * aux * aux) % MOD;
}

int main()
{fin >> n >> p;
g<<putere(n, p);

    return 0;
}