Cod sursa(job #604665)
Utilizator | Data | 24 iulie 2011 12:31:40 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.44 kb |
var n,a,p:int64;
f,g:text;
begin
assign(f,'lgput.in');
reset(f);
assign(g,'lgput.out');
rewrite(g);
read(f,n,p);
a:=1;
while p>0 do
if p mod 2=0 then
begin
n:=(n*n) mod 1999999973;
p:=p div 2;
end
else
begin
a:=(a*n) mod 1999999973;
p:=p-1;
end;
write(g,a);
close(f);
close(g);
end.