Cod sursa(job #1829292)

Utilizator NarniussAnghelache Bogdan Narniuss Data 14 decembrie 2016 19:13:37
Problema Ridicare la putere in timp logaritmic Scor 0
Compilator c Status done
Runda Arhiva educationala Marime 0.4 kb
#include <stdlib.h>
#include <stdio.h>
#define mod 1999999973


int main()
{
	freopen("lgput.in" , "r", stdin);
	freopen("lgput.out" , "w" , stdout);
	
	int i, p;
	long long int c, n;
	
	scanf("%lld %d", &n, &p);
	c = n;
	n=1;
	if(n == 1){
		printf("n\n");
	}
	else{
	for(i = 0 ; (1 << i) <= p ; ++i)
	{
		
		if(p & (1 << i)){
			n = (n*c) % mod;
		}
		c = (c*c) % mod;
	}
	printf("%lld\n", n);
}
	return 0;
}