Cod sursa(job #2079497)

Utilizator marcogoldPop Mihali Marco Silviu marcogold Data 1 decembrie 2017 14:27:06
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.36 kb
#include <iostream>
#include <fstream>
using namespace std;

ifstream fi("lgput.in");
ofstream fo("lgput.out");


int main()
{
    long long b,p,sol=1,c=1999999973;
    fi>>b>>p;

    for(int i=0; i<31; i++)
    {
        if(p&(1<<i))
        sol=sol*b;
        b=b*b;
        sol=sol%c;
        b=b%c;


         }
    fo<<sol;
    return 0;
}