Pagini recente » Cod sursa (job #2627953) | Cod sursa (job #2651202) | Borderou de evaluare (job #520019) | Cod sursa (job #327342) | Cod sursa (job #58294)
Cod sursa(job #58294)
var n:int64;
p,ct:longint;
k:byte;
fi,fo:text;
function combinari(n,p:integer):integer;
begin
if (p=0)or(p=n) then combinari:=1
else combinari:=combinari(n-1,p-1)+combinari(n-1,p);
end;
begin
assign(fi,'pascal.in'); reset(fi);
assign(fo,'pascal.out'); rewrite(fo);
read(fi,n,k); ct:=0;
if (n-1)mod 2=1 then begin
for p:=1 to (n-1)div 2 + 1 do begin
if combinari(n,p) mod k=0 then inc(ct);
end; ct:=2*ct-1; end
else begin
for p:=1 to (n-1)div 2 do begin
if combinari(n,p) mod k=0 then inc(ct);
end; ct:=2*ct; end;
writeln(fo,ct);
close(fi);
close(fo);
end.