Cod sursa(job #1052574)

Utilizator Mihai_ChihaiMihai Chihai Mihai_Chihai Data 11 decembrie 2013 15:50:30
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator fpc Status done
Runda Arhiva educationala Marime 0.44 kb
program putere;
const rest=1999999973;
var a,b:int64;
function lgput(a,b:int64):int64;
begin
  if a=0 then lgput:=0
     else if b=0 then lgput:=1
       else if b mod 2=0 then lgput:=lgput(sqr(a),b div 2) mod rest
         else lgput:=(a*(lgput(a,b-1) mod rest)) mod rest;


end;


begin
assign(input,'lgput.in') ; reset(input);
assign(output,'lgput.out'); rewrite(output);
readln(a,b);
writeln(lgput(a,b));
close(output);
end.