Cod sursa(job #447059)
Utilizator | Gramatovici Paul gramatovici_paul | Data | 27 aprilie 2010 16:54:56 |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.38 kb |
var n,p:longint;
function pute(a,n:int64):int64;
var p:int64;
begin
p:=1;
while n<>0 do
begin
if n mod 2=1 then
p:=p* a mod 1999999973;
a:=a*a mod 1999999973;
n:=n div 2;
end;
pute:=p;
end;
begin
assign(input,'lgput.in');
assign(output,'lgput.out');
reset(input);
rewrite(output);
readln(n,p);
writeln(pute(n,p));
end.