为了叙述方便,先简化题目的描述:
8个数排序,2必须在1和3中间,4和5不能相邻,6和7必须相邻,8没有提到,位置随意。
采取插入法排序:
先假设一个空队列,然后把数字一个一个插入。
先看123,2必须在1和3中间,那么这3个数字相对位置只能是123或者321,于是有2种排法。
这个队列看上去是"_*_*_*_",其中"*"是已经插入的数字,"_"是可以插入数字的位置。
再看8,位置可以随意插入到123中间或者头尾的任何一个位置,于是它可以插入到已经存在的队列的4个"_"位置中的任何一个。
新的队列是"_*_*_*_*_"。
再看6和7,因为他们必须相邻,所以可以把他们当作一个单位插入,有5个位置可以选择,又因为67可以交换位置变成76,所以每个位置之后实际上产生两种排法。一共就是10种。
新的队列是"_*_*_*_*_*_"。其中有一个*是67靠在一起。
再看4和5,先插入4,有6个位置可以选择,分别是队列中的每一个"_",再插入7,此时7不能插入6的所在的那个"_"位置,只能插入到其他的"_"中,于是只有5个位置可以选择。两个数字一共是6*5=30种插入方法。
最后,把以上各步骤的选择可能的数目全部相乘,一共就是2*4*10*30=2400种站法。
(2×7×6×5×4×3×2×1-2×2×6×5×4×3×2×1)×2/6=2400
把小光和小亮作为一个整体排,这样开始全部排列方式为2×7×6×5×4×3×2×1=10080种排法
减去小惠和小智相邻(作为一个整体)的排法2×2×6×5×4×3×2×1=2880种排法
因为冬冬必须站在小悦和阿奇的中间,如果没有限制则这三个人排法为6种,现在有限制则为2种,所以前面两种排法相减结果×2/6
最后等于2400种排法
冬冬先站
悦
阿奇
别站
冬冬
前面或
面
两
位置
互换
2种站
第三步站第8
设名字
X
前已站3
X
共
4
位置
站
第四步
光
亮必须相邻
两
作
整体
前已经站
4
两
5
位置
站
光
亮
互换位置
两种站
站
惠
智
前已经站
6
两
必须并列
第7
6
位置
站
第8
能
第7
相邻
5
位置
所
总数
2*4*(5*2)*(6*5)=2400种
冬冬小悦阿奇最先站,小惠和小智最后站。
2*4*5*6*7*2=3360
冬冬先站好
然后小悦和阿奇分别站在冬冬的前面或后面,因为两人位置可以互换,因此有2种站法。
第三步站第8人,设名字为X。因为之前已站3人,因此X一共有4个位置可站。
第四步,小光和小亮必须相邻,因此把两个人作为一个整体,之前已经站好4人,因此这两人有5个位置可站,但是因为小光和小亮可以互换位置,又有两种站法。
最后站小惠和小智,之前已经站好6人,但是有两人必须并列,因此第7个人有6个位置可站,而第8个人因为不能和第7个人相邻,因此只有5个位置。
所以总数为
2*4*(5*2)*(6*5)=2400种