Cod sursa(job #628939)
Utilizator | Data | 2 noiembrie 2011 13:40:53 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 0 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.47 kb |
program lgput;
var f,g:text;
n,p,s:integer;
begin
assign(f,'lgput.in');
assign(g,'lgput.out');
reset(f);
rewrite(g);
read(f,n,p);
s:=1;
while p<>0 do
if p mod 2=0 then begin
n:=(n*n) mod 1999999973;
p:=p div 2;
end
else begin
s:=(s*n) mod 1999999973;
n:=(n*n) mod 1999999973;
p:=p div 2;
end;
write(g,s);
close(f);
close(g);
end.