Cod sursa(job #226482)
Utilizator | Data | 1 decembrie 2008 20:31:19 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.37 kb |
program puteri;
const m=1999999973;
var n,p:longint;
t,r: int64;
begin
assign(input,'lgput.in');
reset(input);
assign(output,'lgput.out');
rewrite(output);
readln(n,p);
t:=n mod m;
r:=1;
while p>0 do
begin
if p mod 2=1 then r:=r*t mod m;
t:=(t*t) mod m;
p:=p div 2;
end;
writeln(r);
close(input);
close(output);
end.