tyvjp1085 派对
P1085 - 派对From Admin Normal (OI) 总时限:10s 内存限制:128MB |
|||||||
|---|---|---|---|---|---|---|---|
|
|||||||
Delphi语言: 高亮代码由发芽网提供
program tyvj1085;
var a:array[1..10] of longint;
mark:array[1..10] of boolean;
n,k,i,ans,kk,first:longint;
procedure dfs(k,sum:longint);
var i:integer;
begin
if (sum=n) and(abs(a[k]-a[first])<=kk) then inc(ans)
else
for i:=1 to n do
if (not mark[i]) and (abs(a[k]-a[i])<=kk) then begin
mark[i]:=true;
dfs(i,sum+1);
mark[i]:=false;
end;
end;
begin
readln(n,kk);
for i:=1 to n do readln(a[i]);
fillchar(mark,sizeof(mark),false);
ans:=0;
for i:=1 to n do begin
first:=i;
mark[i]:=true;
dfs(i,1);
mark[i]:=false;
end;
writeln(ans div n);
end.
var a:array[1..10] of longint;
mark:array[1..10] of boolean;
n,k,i,ans,kk,first:longint;
procedure dfs(k,sum:longint);
var i:integer;
begin
if (sum=n) and(abs(a[k]-a[first])<=kk) then inc(ans)
else
for i:=1 to n do
if (not mark[i]) and (abs(a[k]-a[i])<=kk) then begin
mark[i]:=true;
dfs(i,sum+1);
mark[i]:=false;
end;
end;
begin
readln(n,kk);
for i:=1 to n do readln(a[i]);
fillchar(mark,sizeof(mark),false);
ans:=0;
for i:=1 to n do begin
first:=i;
mark[i]:=true;
dfs(i,1);
mark[i]:=false;
end;
writeln(ans div n);
end.
浙公网安备 33010602011771号