Cod sursa(job #296486)

Utilizator AndreiDumaAndrei Duma AndreiDuma Data 4 aprilie 2009 21:01:24
Problema Ridicare la putere in timp logaritmic Scor 20
Compilator fpc Status done
Runda Arhiva educationala Marime 0.42 kb
var n,p,a:int64;

    f,g:text;

function putere( x:int64; n:int64 ):int64;
begin
	if n=0 then putere:=1
	       else if n mod 2 =1 then putere:=putere(x,n-1)*x mod 1999999973
		                      else putere:=putere(x,n div 2)*putere(x,n div 2) mod 1999999973;
end;

begin
assign(f,'lgput.in');reset(f);
assign(g,'lgput.out');rewrite(g);
readln(f,n,p);

a := putere(n,p);

writeln(g,a);
close(g);

end.