Cod sursa(job #1583487)

Utilizator cordun_cristinaCristina Maria Cordun cordun_cristina Data 28 ianuarie 2016 23:48:47
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.42 kb
#include <iostream>
#include <fstream>

using namespace std;
ifstream f("lgput.in");
ofstream g("lgput.out");

const long long rest = 1999999973LL;
long long n, p;
long long Sol;

int main()
{
    f>>n>>p;
    Sol = n;
    while(p > 1)
    {
        if(p%2 == 0)
            Sol = (Sol*Sol) % rest;
        else
            Sol = (Sol*n) % rest;
        p = p/2;
    }
    g<<Sol<<'\n';
    return 0;
}