Cod sursa(job #581364)
Utilizator | Data | 14 aprilie 2011 01:10:34 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 0 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.39 kb |
var a,b:longint;
function putere(x,n:longint):int64;
begin
if n=0 then putere:=1 mod 1999999973 else
if n mod 2=0 then putere:=sqr(putere(x,n div 2))mod 1999999973 else
putere:=x*sqr(putere(x,(n-1) div 2))mod 1999999973;
end;
begin
assign(f,'lgput.in');
reset(f);
readln(f,a,b);
close(f);
assign(f,'lgput.out');
rewrite(f);
writeln(f,putere(a,b));
close(f);
end.