Cod sursa(job #226482)

Utilizator johnyJohny Deep johny 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.