Cod sursa(job #296522)
Utilizator | Data | 4 aprilie 2009 21:33:44 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.32 kb |
const q = 1999999973;
var n,p,rez:int64;
f,g:text;
begin
assign(f,'lgput.in');reset(f);
assign(g,'lgput.out');rewrite(g);
readln(f,n,p);
rez:=1;
while (p>0) do
begin
if p mod 2=1 then
begin
rez:=rez*n mod q;
dec(p);
end;
n:=n*n mod q;
p:=p div 2;
end;
writeln(g,rez);
close(g);
end.