Cod sursa(job #1141148)
Utilizator | Data | 12 martie 2014 17:36:52 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.35 kb |
var a,b,c,p,k,m:int64;
begin
assign(input,'lgput.in');
assign(output,'lgput.out');
reset(input);
rewrite(output);
read(a,b);
c:=1999999973;
m:=1;
while b>0 do begin
k:=1;
p:=a mod c;
while k*2<=b do begin
p:=p*p mod c;
k:=k*2;
end;
b:=b-k;
m:=m*p mod c;
end;
write(m);
end.