Cod sursa(job #1011421)
| Utilizator | Data | 16 octombrie 2013 20:32:49 | |
|---|---|---|---|
| Problema | Ridicare la putere in timp logaritmic | Scor | 0 |
| Compilator | fpc | Status | done |
| Runda | Arhiva educationala | Marime | 0.55 kb |
Program logaRITM;
function putere(var a,b:longint):longint;
var p:longint;
begin
p:=1;
while b>0 do
begin
if b mod 2 = 1 then
begin
p:=(p*a)mod 1999999973;
dec(b);
end;
a:=(a*a)mod 1999999973;
b:=b div 2;
end;
putere:=p;
end;
var a,b:longint;
input,out:text;
begin
assign(input,'lgput.in');
assign(out,'lgput.out');
rewrite(out);
readln(input,a,b);
writeln(out,putere(a,b));
close(input);
close(out);
end.