• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 51, 文章 - 1, 評論 - 41, 引用 - 0
            數(shù)據(jù)加載中……

            倒數(shù)1、2的票數(shù)相同的概率

            我是歌手第4季第一集就出現(xiàn)了倒數(shù)1、2名票數(shù)相同的情況,使得原本應(yīng)該淘汰一名選手的賽制無法執(zhí)行。出現(xiàn)這種概率的情況有多大?下面是粗略模擬計算其概率的python代碼。雖然無法估計每個候選人的權(quán)重,但出現(xiàn)倒數(shù)1、2名票數(shù)相同的情況也有百分之幾,概率不小。

            """本程序測試在投票活動中,出現(xiàn)并列倒數(shù)第一的概率是多少"""

            import random

                   
            def onePoll(candidates):
                """候選人進行一次投票

                Parameters
                ----------
                candidates: [Integer]
                    候選人的權(quán)重,權(quán)重越大越可能被投票,len(candidates)是候選人數(shù)

                Returns
                -------
                choiced: Integer, [0, len(candidates))
                    被投票候選人的序號
                """
               
                t = sum(candidates)
                n = random.randint(0, t-1)
                for i in range(len(candidates)):
                    if (n >= candidates[i]):
                        n -= candidates[i]
                    else:
                        return i
                else:
                    assert False, "不應(yīng)該進入該分支"
               
            def generatePollResult(voters, candidates):
                """產(chǎn)生投票結(jié)果

                Parameters
                ----------
                voters: Integer
                    投票人數(shù)
                candidates: [Integer]
                    候選人的權(quán)重,權(quán)重越大越可能被投票,len(candidates)是候選人數(shù)
               
                Returns
                -------
                result: [Integer]*len(candidates)
                    每個人所得票數(shù)
                """


                result = [0]*len(candidates)
                for i in range(voters):
                    result[onePoll(candidates)] += 1
                return result


            def simulate(count, voters, candidates, judge):
                """模擬投票行為,統(tǒng)計滿足要求的投票結(jié)果的概率

                Parameters
                ----------
                count: Integer
                    模擬投票的次數(shù)
                voters: Integer
                    投票人數(shù)
                candidates: [Integer]
                    候選人的權(quán)重,權(quán)重越大越可能被投票,len(candidates)是候選人數(shù)
                judge: bool ([Integer]*len(candidates))
                    對投票結(jié)果是否符合要求的判斷

                Results
                -------
                prop: Float
                    所求投票結(jié)果的概率
                """

                satisfied = 0

                for i in range(count):
                    result = generatePollResult(voters, candidates)
                    if (judge(result)):
                        satisfied += 1

                return float(satisfied) / count
               
            if __name__ == "__main__":
               
                def isLast2Equal(result):
                    result.sort()
                    return result[0] == result[1]

                print(simulate(1000, 500, [110,120,130,140,150,160,170,180], isLast2Equal))

            posted on 2016-01-17 20:03 lemene 閱讀(208) 評論(0)  編輯 收藏 引用


            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            99久久国语露脸精品国产| 久久精品成人免费看| 欧美与黑人午夜性猛交久久久| 日本加勒比久久精品| 亚洲午夜福利精品久久| 色综合久久中文综合网| 色综合久久久久久久久五月| 精品熟女少妇aⅴ免费久久| 九九久久自然熟的香蕉图片| 色综合久久88色综合天天 | 亚洲精品乱码久久久久久按摩| 久久免费视频观看| 国产精品久久久久久久app| 精品久久国产一区二区三区香蕉 | 精品久久久久久无码专区不卡| 97久久超碰国产精品旧版| 一本久久免费视频| 国产精品一区二区久久精品无码 | 亚洲美日韩Av中文字幕无码久久久妻妇 | 婷婷综合久久中文字幕蜜桃三电影 | 久久久精品人妻一区二区三区四| 人妻精品久久久久中文字幕| 国产精品女同久久久久电影院| 午夜精品久久影院蜜桃| 亚洲成色999久久网站| 久久国产视屏| 中文精品久久久久人妻| 国产成人精品久久亚洲| 狠狠狠色丁香婷婷综合久久俺| 伊人久久综合成人网| 国内精品伊人久久久久av一坑 | 国产精品一区二区久久国产| 久久亚洲AV无码精品色午夜麻豆| 国产精品99久久久久久猫咪| 国产V综合V亚洲欧美久久| 亚洲AV日韩AV天堂久久| 伊人久久大香线蕉av不变影院| 思思久久好好热精品国产| 亚洲狠狠婷婷综合久久蜜芽| 久久免费视频1| 国产成人精品综合久久久久|