Cod sursa(job #199641)
Utilizator | Data | 19 iulie 2008 22:26:21 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 0 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.38 kb |
program gaju;
const z=1999999973;
var x,y:int64;
function p(x,y:int64):int64;
begin
if y>1 then begin
if y mod 2=0 then p:=(sqr(p(x,y div 2)))mod z
else p:=(sqr(p(x,(y-1)div 2))*x)mod z;
end else p:=x;
end;
begin
assign(f,'lgput.in');reset(f);
assign(g,'lgput.out');rewrite(g);
readln(f,x,y);
writeln(g,p(x,y));
close(g);
end.