Cod sursa(job #845960)
Utilizator | Data | 31 decembrie 2012 23:06:12 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.4 kb |
program putere_logaritmica;
const modulo=1999999973;
var f:text;
n,p,rez,m:int64;
begin
assign(f,'lgput.in');
reset(f);
readln(f,n,p);
close(f);
assign(f,'lgput.out');
rewrite(f);
m:=n;
rez:=1;
while p>0 do
begin
if p mod 2 =1 then rez:=(rez*m)mod modulo;
m:=sqr(m) mod modulo;
p:=p div 2;
end;
writeln(f,rez);
close(f);
end.