春節(jié)假期,你是否參與了搶紅包活動(dòng)?雖然搶紅包主要是為了圖個(gè)喜慶彩頭,金額多少并不重要,但同一個(gè)紅包里搶到的金額差距卻往往很大。那么,拼手氣紅包到底有沒有規(guī)律可循?先搶和后搶有區(qū)別嗎?
最初,搶紅包采用的是完全隨機(jī)分配的方式??偨痤~和人數(shù)固定時(shí),系統(tǒng)會(huì)隨機(jī)分錢,看似全憑運(yùn)氣。然而這種方式存在一個(gè)巨大漏洞:先搶的人更容易拿到大額紅包。例如,發(fā)一個(gè)100元紅包給10個(gè)人,第一個(gè)人能搶的金額在0.01元到100元之間,平均值為50元。如果第一個(gè)人只搶了10元,剩下90元給后面的人,第二個(gè)人的期望值就降到了45元。越往后,剩余的錢越少,期望值就越低。這種情況下,先搶占便宜,后搶吃虧,顯然不公平。
為了既保留隨機(jī)性又讓大家覺得公平,現(xiàn)在的搶紅包算法采用了“二倍均值法”。簡(jiǎn)單來說,就是給每個(gè)人的紅包設(shè)一個(gè)限額:最少0.01元,最多不超過剩余金額平均值的兩倍。以100元分給10人為例,第一個(gè)人最多只能搶20元,他的金額范圍是0.01到20元,數(shù)學(xué)期望為10元。如果他只拿了1元,剩下99元分給9人,第二個(gè)人最多能搶22元,期望依然是11元左右。即使他手氣好直接拿走了上限20元,剩下的80元分給9個(gè)人,第二個(gè)人的上限也約為17.78元,期望值穩(wěn)定在8.89元左右。這樣一來,不管第一個(gè)人搶走多少,后面每個(gè)人的期望值都圍繞著“剩余人均錢數(shù)”波動(dòng),不會(huì)出現(xiàn)斷崖式下跌。此外,越到后面,剩余人數(shù)越少,系統(tǒng)允許的上限相對(duì)放開,前面的人被規(guī)則限制,很難搶到大額;而后面的人則更容易一口“吃”掉剩下的錢。
實(shí)際上,真實(shí)的搶紅包算法更為復(fù)雜,除了保障相對(duì)公平的金額分配外,平臺(tái)還需考慮最小金額限制、高并發(fā)下的系統(tǒng)穩(wěn)定性等各種細(xì)節(jié)問題。紅包或許有大小,但那份“搶”來的熱鬧與“拆”開的喜悅,才是我們真正在乎的年味和祝福。