本帖最后由 realnumber 于 2019-5-9 17:58 编辑
试了2组数据
a0,a1,a2,a3,a4,a5,a6,a7,a8,a9(男)
第1次0,1,2,3,4,5,6,7,8,9(女)
第2次 1,7,5,6,9,4,8,3,2,0(女)
输出是439792种
a0,a1,a2,a3,a4,a5,a6,a7,a8,a9
第1次0,1,2,3,4,5,6,7,8,9
第2次1,0,3,4,5,6,7,2,9,8
输出是439952种,第2组数据程序如下:
var a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,k:longint;
begin
k:=0;
for a0:=2 to 9 do
for a1:=0 to 9 do if (a1<>1)and(a1<>0)and(a1<>a0) then
for a2:=0 to 9 do if (a2<>2)and(a2<>3)and(a2<>a1)and(a2<>a0) then
for a3:=0 to 9 do if (a3<>3)and(a3<>4)and(a3<>a2)and(a3<>a1)and(a3<>a0) then
for a4:=0 to 9 do if (a4<>4)and(a4<>5)and(a4<>a3)and(a4<>a2)and(a4<>a1)and(a4<>a0) then
for a5:=0 to 9 do if (a5<>5)and(a5<>6)and(a5<>a4)and(a5<>a3)and(a5<>a2)and(a5<>a1)and(a5<>a0) then
for a6:=0 to 9 do if (a6<>6)and(a6<>7)and(a6<>a5)and(a6<>a4)and(a6<>a3)and(a6<>a2)and(a6<>a1)and (a6<>a0) then
for a7:=0 to 9 do if (a7<>7)and(a7<>2)and(a7<>a6)and(a7<>a5)and(a7<>a4)and(a7<>a3)and(a7<>a2)and(a7<>a1)and(a7<>a0) then
for a8:=0 to 9 do if (a8<>8)and(a8<>9)and(a8<>a7)and(a8<>a6)and(a8<>a5)and(a8<>a4)and(a8<>a3)and(a8<>a2)and(a8<>a1)and(a8<>a0) then
for a9:=0 to 9 do if (a9<>9)and(a9<>8)and(a9<>a8)and(a9<>a7)and(a9<>a6)and(a9<>a5)and(a9<>a4)and(a9<>a3)and(a9<>a2)and(a9<>a1)and(a9<>a0) then
k:=k+1;
writeln(k);
end.
一共有11种类型:
a0,a1,a2,a3,a4,a5,a6,a7,a8,a9(男)
第1次0,1,2,3,4,5,6,7,8,9(女)
第2次 1,0,3,2,5,4,7,6,9,8(女)记为"2+2+2+2+2"
a0,a1,a2,a3,a4,a5,a6,a7,a8,a9(男)
第1次0,1,2,3,4,5,6,7,8,9(女)
第2次 1,2,0,4,5,3,7,6,9,8(女)记为"3+3+2+2"
依次还有"4+2+2+2",“4+3+3”,“4+4+2”,“5+3+2”,“5+5”,“6+4”,"6+2+2","7+3","8+2"
最多几次成功错排后可能导致无法继续错排?也就是说不能保证情侣都换个新人. |