红蓝军对抗
? ? ? ? ? 一道智力題:有五個人進行對抗比賽,每次對抗一部分人當紅軍,一部分人當藍軍。問,至少經過多少次對抗,五個人中的任意兩個人都進行過一次紅藍對抗和藍紅對抗?
? ? ? ? 為滿足題意,至少需要出現10種一對一對陣方式,以ABCDE記這五個人,AB表示A扮演紅軍,B扮演藍軍,BA則剛好相反,則題目轉換為:至少需要經過多少次對抗,使得集合{AB,AC,AD,AE,BC,BD,BE,CD,CE,DE}中每個元素都出現一次正序和逆序?
? ? ? ? 這題的答案其實很難,比較常見的結果是C(5,2)=10,這個顯然是不對的。
? ? ? ? 另一種常見的解法是6種,很多人都能想到,這里不列舉了。但是里面存在冗余。
? ? ? ? 還有人覺得是5種,最簡單的列法莫過于:
A-BCDEB-ACDEC-ABDED-ABCEE-ABCD 五種剛好可以保證集合中每個元素都出現一次正序和逆序。
這種解法可不可以再簡化呢?上述解法每次左邊只有一個人,如果左邊是兩個人,數量可不可以再精簡?
實際上是可以的,此題的解應該是四種,這里給出一種布陣方法:
ABE -- CDACD -- BEBD -- ACEEC -- ABD
這種布陣方法的難點就在于,大多數人思考時,習慣按照一種思路,比如左邊一直是2個人,或者一直是3個人。這種交叉排列的方法,不是很容易想到,需要一定的時間。
? ? ? ? 有沒有可能只需要三場比賽呢?四場一定是最少嗎?是的。在上述布陣方法中,每一種布陣方法和其它布陣方法一起,最少可以剔除集合中3種情況,所以能剔除12種。如果只有三場,則只能剔除9種,小于集合中元素的數量。
? ? ? ? 至于這道題的具體解法和數學原理,筆者暫時還未想到,留待以后補充。
總結
- 上一篇: 开本与纸张的规格
- 下一篇: Linux学习笔记--12(iptabl