有一個房間销部,里面有 100 個人摸航,每個人有 1元。每過一會舅桩,每個有錢的人給隨機的其他人 1 元酱虎,經(jīng)過一段時間后,房間內(nèi)的資金分配情況是怎樣

今天逛知乎擂涛,無意間看到這么一個問題读串,最近剛好在學習python,就試著模擬一下撒妈。

思路

  • 用長度為100恢暖,元素值都為1的數(shù)組模擬房間里的100個人,
  • 從編號0到99依次對元素值減一狰右,并隨機獲取一個元素使其加一杰捂,完成一次循環(huán)A。
  • 多次執(zhí)行A操作棋蚌,即可模擬問題

代碼實現(xiàn)

盡量添加了過多的注釋琼娘,希望小白也能讀懂

# -*- coding: UTF-8 -*-
import random
import numpy as np
import matplotlib as mpl
mpl.use('TkAgg')
import matplotlib.pyplot as plt
print(mpl.get_backend())
from matplotlib.animation import FuncAnimation  # 動圖的核心函數(shù)


# 生成集合100人集合方法,編號從0到99,每人擁有1元錢,即y軸數(shù)據(jù)
def create():
    l = []
    for i in range(0, 100):
        l.append(1)
    return l


l = create()  # 100人集合賦值給l

fig = plt.figure()
ax = fig.add_subplot(111)
# x軸數(shù)據(jù)
x = np.arange(0, 100)
bar = ax.bar(x, l)


def animat(i):
    # 內(nèi)層循環(huán)附鸽,從0-99編號的人依次隨機給集合內(nèi)的人一塊錢脱拼,如果當前個人所擁有的財富為0,則跳過坷备,下一個人繼續(xù)
    for index in range(0, 100):
        # 獲取當前需要出錢人的總資產(chǎn)
        set_item = l[index]
        # 如果他總資產(chǎn)等于0熄浓,則跳過,繼續(xù)下一個人
        # 如果不等于零省撑,則資產(chǎn)減一
        if set_item == 0:
            continue
        else:
            l[index] = set_item - 1
        # 通過系統(tǒng)獲取一個0-99的隨機數(shù)
        get_random_index = random.randint(0, 99)
        # 指定隨機數(shù)編號的人資產(chǎn)加一
        l[get_random_index] = l[get_random_index] + 1
    plt.cla()
    bar = ax.bar(x, l)
    plt.title(str(i))
    plt.ylim((0, 10))
    return bar


# 動畫實現(xiàn)
ani = FuncAnimation(fig=fig, func=animat, frames=1000, blit=False)

# 輸出圖形
plt.show()
  • 結果展示(上面的那個數(shù)字是當前循環(huán)的次數(shù))


    xuxbp-5chxn.gif
  • 運行100000次之后,上圖為未排序的結果赌蔑,下圖為排序結果


    image.png
  • 結果
    個人認為,越極端(財富極多竟秫,極小的情況由于為零就不操作娃惯,則不考慮)的概率越小,大概率趨向正太分布

財富小于零時可以繼續(xù)操作的情況

  • 代碼就不貼了直接看結果


    image.png
  • 基本符合正太分布肥败,越趨向于0(1趾浅?)數(shù)據(jù)越多愕提,趨向于兩邊極端數(shù)據(jù)越少。

結束

  • 結果只是猜想皿哨,并未證實
  • 主要為了練習下python解決問題的能力
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末浅侨,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子证膨,更是在濱河造成了極大的恐慌如输,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,311評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件央勒,死亡現(xiàn)場離奇詭異不见,居然都是意外死亡崔步,警方通過查閱死者的電腦和手機脖祈,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評論 2 382
  • 文/潘曉璐 我一進店門盖高,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人眼虱,你說我怎么就攤上這事∧笮” “怎么了撞蚕?”我有些...
    開封第一講書人閱讀 152,671評論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長过牙。 經(jīng)常有香客問我甥厦,道長,這世上最難降的妖魔是什么寇钉? 我笑而不...
    開封第一講書人閱讀 55,252評論 1 279
  • 正文 為了忘掉前任刀疙,我火速辦了婚禮,結果婚禮上扫倡,老公的妹妹穿的比我還像新娘谦秧。我一直安慰自己,他們只是感情好撵溃,可當我...
    茶點故事閱讀 64,253評論 5 371
  • 文/花漫 我一把揭開白布疚鲤。 她就那樣靜靜地躺著,像睡著了一般缘挑。 火紅的嫁衣襯著肌膚如雪集歇。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,031評論 1 285
  • 那天语淘,我揣著相機與錄音诲宇,去河邊找鬼际歼。 笑死,一個胖子當著我的面吹牛焕窝,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播维贺,決...
    沈念sama閱讀 38,340評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼它掂,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了溯泣?” 一聲冷哼從身側響起虐秋,我...
    開封第一講書人閱讀 36,973評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎垃沦,沒想到半個月后客给,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,466評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡肢簿,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,937評論 2 323
  • 正文 我和宋清朗相戀三年靶剑,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片池充。...
    茶點故事閱讀 38,039評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡桩引,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出收夸,到底是詐尸還是另有隱情坑匠,我是刑警寧澤,帶...
    沈念sama閱讀 33,701評論 4 323
  • 正文 年R本政府宣布卧惜,位于F島的核電站厘灼,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏咽瓷。R本人自食惡果不足惜设凹,卻給世界環(huán)境...
    茶點故事閱讀 39,254評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望茅姜。 院中可真熱鬧围来,春花似錦、人聲如沸匈睁。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽航唆。三九已至胀蛮,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間糯钙,已是汗流浹背粪狼。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留再榄,地道東北人。 一個月前我還...
    沈念sama閱讀 45,497評論 2 354
  • 正文 我出身青樓困鸥,卻偏偏與公主長得像,于是被迫代替她去往敵國和親疾就。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,786評論 2 345