Cod sursa(job #2285897)

Utilizator MeriussMarius Hiticas Meriuss Data 19 noiembrie 2018 14:55:14
Problema Ridicare la putere in timp logaritmic Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.34 kb
#include <iostream>
#include <string.h>

using namespace std;
int n_max = 10001;
int m = 1999999973;

int main()
{
    int i,n,p;
    unsigned long long a,sol=1;
    cin>>n>>p;
	a = n;
	for (i = 0; (1<<i) <= p; ++ i)
	{
		if ( ((1<<i) & p) > 0)
        sol= (sol * a) % m;

			a=(a * a) % m;
	}
	cout<<(n, sol);

    return 0;
}