Cod sursa(job #604217)

Utilizator ctlin04UAIC.VlasCatalin ctlin04 Data 20 iulie 2011 23:44:08
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.46 kb
Program putere_logaritmica;
const rest=1999999973;
 var a,n,s:int64;
     fi,fo:text;
begin
 assign(fi,'lgput.in');
  assign(fo,'lgput.out');
 reset(fi);
  rewrite(fo);
 readln(fi,a,n);
 s:=1;
  while n>0 do
   if n mod 2=0 then begin
                      a:=(a*a) mod rest;
                      n:=n div 2;
                      end
    else begin
          s:=(s*a) mod rest;
          dec(n);
          end;
   write(fo,s);
close(fo);
end.