Cod sursa(job #1380467)

Utilizator abel1090Abel Putovits abel1090 Data 7 martie 2015 20:35:24
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
///LGPUT
#include <fstream>
#define MODULO 1999999973
using namespace std;
 
unsigned long long power(unsigned long long n, unsigned p) {
    unsigned long long res;
    if(p == 0) return 1;
    else {
        res = power(n, p/2);
        res = res*res % MODULO;
        if(p%2 != 0) res = res*n;
        return res % MODULO;
    }
}
 
int main() {
    ifstream fin("lgput.in");
    ofstream fout("lgput.out");
 
    unsigned long long n;
    unsigned p;
    fin >> n >> p;
    /// % MODULO;
    fout << power(n, p) << '\n';
    return 0;
}