Cod sursa(job #186703)

Utilizator cheery_g1rlHaller Emanuela cheery_g1rl Data 28 aprilie 2008 17:37:01
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.58 kb
var a,b:int64;
function put(a,b:int64):int64;
    var r:qword;
   begin
      if b=0 then put:=1
             else
                if b and 1=1 then put:=(a*put(a,b-1)) mod 1999999973
                             else
                                begin
                                   r:=put(a,b shr 1);
                                   put:=(r*r) mod 1999999973;
                                end;
   end;
begin
assign(input,'lgput.in'); reset(input); assign(output,'lgput.out'); rewrite(output);
readln(a,b);
writeln(put(a,b));
close(input); close(output);
end.