赛程安排 单循环赛 使用固1轮换法的matlab程序如下
参赛队伍为偶数
%%
%p为偶数
clc,clear
p=10;
A=zeros((p-1)*p/2+p-2,2);
[m,n]=size(A);
%%
%构建第一轮比赛排序
for o=1:p/2
A(o,1)=o;
A(o,2)=p-o+1;
end
A
%%
%构建其他轮比赛排序
for i=1:p-2
for t=1:p/2
if t==1
A((p/2+1)*i+1,1)=1;
A((p/2+1)*i+t,2)=A((p/2+1)*(i-1)+(t+1),2);
elseif t==2
A((p/2+1)*i+t,1)=A((p/2+1)*(i-1)+1,2);
A((p/2+1)*i+t,2)=A((p/2+1)*(i-1)+(t+1),2);
%elseif t==3
% A((p/2+1)*i+t,1)=A((p/2+1)*(i-1)+(t-1),1);
% A((p/2+1)*i+t,2)=A((p/2+1)*(i-1)+(t+1),2);
elseif t==(p/2)
A((p/2+1)*i+t,1)=A((p/2+1)*(i-1)+(t-1),1);
A((p/2+1)*i+t,2)=A((p/2+1)*(i-1)+(t),1);
else
A((p/2+1)*i+t,