如果每個人都隨大流,結果會怎樣?

2021-06-15 08:54:41 字數 1443 閱讀 7320

uyhip趣題:如果每個人都隨大流,結果會怎樣?

乙個公司裡有 n 個員工,其中某些員工之間有「好友」的關係(這是乙個對稱的關係)。每天早晨來到公司,員工們都會從茶和咖啡中選擇一樣作為早飲。此時,每個員工都會觀察自己的朋友們都在喝啥:如果超過一半的人都在喝茶,第二天他自己也會跟著喝茶;如果超過一半的人都在喝咖啡,第二天他自己就會跟著喝咖啡;如果喝茶喝咖啡的人數各佔一半(僅當他有偶數個朋友時才會發生這種情況),則第二天他的決策不變,繼續喝自己今天喝的東西。

由於 n 個員工一共只能產生 2n 種不同的早飲組合,因此總有一天大家喝的東西會和過去的某一天一模一樣,從而產生迴圈。證明:迴圈的長度不超過 2 。

我們用乙個圖論模型來描述這個問題,每個員工都用圖里的乙個頂點來表示。所不同的是,儘管這是乙個無向圖(朋友關係是對稱的),但在下面的證明中我們仍然使用了有向圖的模型。對於兩個互為好友的頂點 x 和 y,我們同時新增從 x 到 y 的有向邊,以及從 y 到 x 的有向邊。

對於每乙個有奇數個好友的員工,他的決策都很簡單:昨天大多數好友都喝的啥,今天他就喝啥。但是對於有偶數個好友的員工,決策就沒有那麼容易描述了。妙就妙在這裡:我們給所有有偶數個好友的員工新增乙個從自己出發指向自己的自環,讓他的出度入度也都是奇數。這樣一來,當喝兩種飲料的好友各佔一半時,他自己的決策會打破平局;而當喝兩種飲料的好友數量不同(至少相差 2)時,算上自己喝的也不會改變結果。因此,對於有偶數個好友的員工,決策變得和其他員工也一樣了:他所指向的頂點昨天喝什麼的更多,他今天就喝什麼,不必擔心有平局現象發生。

如果員工 x 和員工 y 是好朋友,並且第 i 天 x 喝的飲料與第 i + 1 天 y 喝的飲料相同,我們就說第 i 天員工 x 影響了員工 y。注意,那些有自環的人要把自己看作自己的朋友,因此自己影響自己也是要算的。那麼在第 i 天,圖里一共有多少條「影響邊」呢?如果 x 的好友中,第 i+1 天裡有 ti+1 個人喝茶,有 ci+1 個人喝咖啡(記住, ti+1 一定不等於 ci+1 ),那麼從 x 出發的影響邊數量就是 ti+1或者 ci+1 (取決於第 i 天 x 喝的什麼)。遍歷所有的 x 求出總和,就是圖里總的影響邊數量。

在第 i+1 天,圖里有多少條影響邊呢?我們現在換乙個方法,從「被影響」的角度來計算影響邊的數量。對於 x 來說,指向他的影響邊數目顯然是 ti+1 和 ci+1的較大值,因為按照規則,他在第 i+2 天喝的飲料應該與第 i+1 天多數人喝的一樣。遍歷所有的 x 求出總和,就是圖里總的影響邊數量。注意,影響邊的數量不可能變少了,因為剛才我們累加的是 ti+1 和 ci+1 之一,但這次我們累加的是 ti+1 和 ci+1 的較大值。

但是圖里的影響邊數量不可能一直在嚴格增加,因為它不可能超過圖里的總邊數。因此,總會有一天,圖里的影響邊總數和前一天相等。而考慮前面的證明過程,這就意味著,對於每個員工 x 來說,昨天從他出發的影響邊數量和今天指向他的影響邊數量取的是 ti+1 和 ci+1 中的同乙個數,即昨天他影響的那些人,也就是今天影響了他的人。換句話說,昨天他喝的東西,和明天他要喝的東西一樣。因此,迴圈長度不超過 2。

每個人心裡都個魔鬼。

公司搬家,這個週末有三天假,在家墮落了三天,心裡不知怎麼的,好象又沉澱了一些莫名其妙的東西。在天台上看著圓圓的天,第乙個想到的是3d裡面的天空球,然後想著想著,開始喚起一些幾年前的回憶。回想起曾經也躺在草地上這樣看著天,看著天上飄落下來的流行雨 想起也躺在湖面漂泊的小船上,看著這樣的看著天,和身邊的...

每個人都需要的中文排版指南

我每次看到網頁上的中文字和英文 數字 符號擠在一起,就會坐立不安,忍不住想在他們之間加個空格。有研究顯示,打字的時候不喜歡在中文和英文之間加空格的人,感情路都走得很辛苦,有七成的比例會在 34 歲的時候跟自己不愛的人結婚,而其餘三成的人最後只能把遺產留給自己的貓。畢竟愛情跟書寫都需要適時地留白。eg...

每個人都需要的中文排版指南

我每次看到網頁上的中文字和英文 數字 符號擠在一起,就會坐立不安,忍不住想在他們之間加個空格。有研究顯示,打字的時候不喜歡在中文和英文之間加空格的人,感情路都走得很辛苦,有七成的比例會在 34 歲的時候跟自己不愛的人結婚,而其餘三成的人最後只能把遺產留給自己的貓。畢竟愛情跟書寫都需要適時地留白。eg...