Cod sursa(job #907827)
| Utilizator | Data | 8 martie 2013 13:14:53 | |
|---|---|---|---|
| Problema | Ridicare la putere in timp logaritmic | Scor | 0 |
| Compilator | fpc | Status | done |
| Runda | Arhiva educationala | Marime | 0.48 kb |
program putere_in_timp_logaritmic;
var n,p,x:qword;
f,g:text;
begin
assign(f,'lgput.in');reset(f);
assign(g,'lgput.out');rewrite(g);
read(f,n,p);
x:=1;
while (p<>1) do
begin
if (p mod 2=0)then begin
n:=(n*n) mod 1999999973;
p:=p div 2;
end
else begin
x:=(x*n) mod 1999999973;
dec(p);
end;
end;
writeln(g,(x*n)mod 1999999973);
close(f); close(g);
end.