Cod sursa(job #1052580)
Utilizator | Data | 11 decembrie 2013 16:10:53 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 10 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.35 kb |
program putere_timp_logaritmic;
const rest=1999999973;
var n,p,rez:int64;
f:text;
begin
assign(f,'lgput.in');
reset(f);
readln(f,n,p);
rez:=1;
while p>0 do begin
if p mod 2=1 then rez:=(rez*n) mod rest;
n:=sqr(n);
p:=p div 2;
end;
assign(f,'lgput.out');
rewrite(f);
writeln(f,rez);
close(f);
end.