2018春运抢票神器:不管黄牛还是抢票软件,都不如app捡漏靠谱。

初见到这个问题是初中的时请了扳平据关于数学谜题的书里概率论的一模一样摆的课后展开就是说到三门题材,当时看成一个扩大阅读看了转,里面说及了一个世界智慧高的妻子秒杀了美国一大群的数学高材生的优异故事(比较夸张),当时本着是题材啊是若懂非懂。

回家?

哟是蒙提霍尔题材?

蒙提霍尔

承提霍尔问题,亦名蒙特霍题材还是三门问题(英文:Monty Hall
problem),是一个渊源博弈论的数学游戏题材,大致出自美国之电视娱乐节目Let’s
Make a Deal。问题之名源于该节目之主席蒙提·霍尔(Monty Hall)。

初期的抒发是:

参赛者会看见三鼓关闭了的山头,其中同样鼓的后有相同部汽车,选中后面来车的那么扇门就可以收获该汽车,而除此以外两扇门背后虽然各藏有同独自山羊。当参赛者选定了一样扇门,但非失开它的下,节目主持人拉开剩下零星扇门的其中同样扇,露出里面同样但山羊。主持人其后会见问参赛者要无苟变另一样鼓仍然关上的山头。
问题是:换其它一样扇门会否增加参赛者赢得汽车之机会率?

本条古老的题材如果提出就招了火爆的争论,有人以为换与匪更换最终收获车之票房价值都是1/2,有人以为换门之晚得及车之几率又老,应该选换门之晚得及车之概率为2/3在做这首稿子的下在果壳上再有人口在吗这争吵,知乎上呢起众多关于这上面的座谈,其实这些争议很多气象下都是为这个题材之模糊表述所招的,关键点在于召集人于门后的景况是否了解

  1. 设若主席事先知道谁门里有山羊并且他特地挑选了来山羊的流派打开了,那么参赛者应该换另一样扇门,这好拿他胜之票房价值从1/3上升至2/3
  2. 倘主席事先未亮堂谁门里有山羊或者他只是随便的精选了一个宗,但实情发现其中恰好是山羊。这时候参赛者没有换门的必备,胜利概率总是1/2

为了继承之座谈,这里运用维基百科达成对此这一个题材之莫马虎的定义

严苛的发挥如下:

  • 参赛者在三扇门遭到选择一扇。他并不知道内里发生什么。
  • 召集人知道各个扇门后面有什么。
  • 主持人要开启剩下的里同样鼓门,并且要提供换门的会。
  • 召集人永远都见面挑一样鼓有山羊的派系。
    • 使参赛者挑了千篇一律鼓有山羊的家,主持人要挑另一样鼓有山羊的派别。
    • 假如参赛者挑了一如既往鼓有汽车之家,主持人随机在另外两扇门遭到挑一样扇有山羊的宗派。
  • 参赛者会吃问是否维持他的本选取,还是移而挑选剩下的那么一道门。

那这问题就足以老好之解了,引用维基的同一帧图解析:

承提霍尔解答

来三种植或的景况,全部还发生相当的可能(1/3):

  • 参赛者挑汽车,主持人挑个别匹羊之另外一样峰。转换将败。
  • 参赛者挑A羊,主持人挑B羊。转换将获得汽车。
  • 参赛者挑B羊,主持人挑A羊。转换将获汽车。

于是玩家选择换门之后获胜的概率应为2/3

这就是说是顽固的待。

证明?

蒙提霍尔解答

定义:

  • 事件A也同样发端玩家选择的同一扇门
  • 事件H为结尾门后的结果

  • 如果是挑不换门的国策

因选择的凡匪交换的政策,所有只发生同样起来选中的凡汽车,最后才会当选汽车。

  • 选择交换门的政策

为选择的凡换成的策略,所有只出同等开头选中的凡羊,最后才能够当选汽车。

叹气,18春运还是更新强,各要词检索量,大幅上涨,可谓一票难求。

次第验证

实施是检验真理的唯一标准,在流言终结者看到他们人工再是实验区验证,发现这样大浪费时间。何通过计算机去错过学这无异段落过程也?
下面用python程序来学这无异截过程:

from __future__ import division
import logging
from matplotlib import pyplot as plt
import numpy as np
import random


class MontyHall(object):
    """docstring for MontyHall"""

    def __init__(self, num=3):
        """
        创建一个door列表
        0 代表关门
        1 表示后面有车
        -1 代表门被打开
        """
        super(MontyHall, self).__init__()
        self.doors = [0] * num
        self.doors[0] = 1
        self.choice = -1
        self.exclude_car = False
        self.shuffle()

    def shuffle(self):
        """  
        开始新游戏
        重新分配门后的东西
        """
        if self.exclude_car == True:
            self.doors[0] = 1
            self.exclude_car = False
        for i in xrange(len(self.doors)):
            if self.doors[i] == -1:
                self.doors[i] = 0
        random.shuffle(self.doors)

    def make_choice(self):
        """
        player随机选择一扇门
        """
        self.choice = random.randint(0, len(self.doors) - 1)
        logging.info("choice: %d" % self.choice)
        logging.info("original: %s" % self.doors)

    def exclude_doors(self):
        """
        主持人知道门后的情况排除门
        直到剩余两扇门
        """
        to_be_excluded = []
        for i in xrange(len(self.doors)):
            if self.doors[i] == 0 and self.choice != i:
                to_be_excluded.append(i)  
        random.shuffle(to_be_excluded)
        for i in xrange(len(self.doors) - 2):
            self.doors[to_be_excluded[i]] = -1
        logging.info("final: %s" % self.doors)

    def random_exclude_doors(self):
        """
        主持人并不知道门后面的情况随机的开门
        直到剩余两扇门
        """
        to_be_excluded = []
        for i in xrange(len(self.doors)):
            if self.doors[i] != -1 and i != self.choice:
                to_be_excluded.append(i)  
        random.shuffle(to_be_excluded)
        for i in xrange(len(self.doors) - 2):
            if self.doors[to_be_excluded[i]] == 1:
                self.exclude_car = True
            self.doors[to_be_excluded[i]] = -1
        logging.info("final: %s" % self.doors)

    def change_choice(self):
        """
        player改变选择
        """
        to_change = []
        for i in xrange(len(self.doors)):
            if self.doors[i] != -1 and i != self.choice:
                to_change.append(i)
        self.choice = random.choice(to_change)
        logging.info("choice changed: %d" % self.choice)

    def random_choice(self):
        """
        player 第二次随机选择门
        """
        to_select = []
        for i in xrange(len(self.doors)):
            if self.doors[i] != -1:
                to_select.append(i)
        self.choice = random.choice(to_select)
        logging.info("random choice : %d" % self.choice)


    def show_answer(self):
        """
        展示门后的情况
        """
        logging.info(self.doors)

    def check_result(self):
        """
        验证结果
        """
        got_it = False
        if self.doors[self.choice] == 1:
            got_it = True
        return got_it

昨日,无锡到重庆底动车,基本上分分钟抢光。

仿照1000车轮,每一样轮子再试验1000不行

  • 莫更改选择:

def unchange_choice_test(n):
    """
    不改变初始的选择
    """
    result = {}
    game = MontyHall()
    for i in xrange(n):
        game.shuffle()
        game.make_choice()
        game.exclude_doors()
        if game.check_result():
            result["yes"] = result.get("yes", 0) + 1
        else:
            result["no"] = result.get("no", 0) + 1
    for key in result:
        print "%s: %d" % (key, result[key])
    return result["yes"] / n

if __name__ == '__main__':
    logging.basicConfig(format='%(levelname)s:%(message)s', level=logging.WARNING)
    results = []
    test_num = 1000
    round_num = 1000
    for x in xrange(0,round_num):
        results.append(change_random_test(test_num) )

    y_mean = np.mean(results)
    y_std = np.std(results)
    x = range(0,round_num)
    y = results
    plt.figure(figsize=(8,4))

    plt.xlabel("round")
    plt.ylabel("frequency")
    plt.title("The frequency of the success")
    tx = round_num / 2
    ty = y_mean
    label_var = "$\sigma \left( X \\right)=$%f" % y_std
    label_mean = "$ X =$%f" % y_mean
    p1_label = "%s and %s" % (label_var,label_mean)
    p1 = plt.plot(x,y,"-",label=p1_label,linewidth=2)
    plt.legend(loc='upper left')


    pl2 = plt.figure(2)
    plt.figure(2)
    plt.hist(results,40,normed=1,alpha=0.8)
    plt.show()

结果:

此输入图片的描述

概率分布:

此地输入图片的讲述

遂的概率都值在 1/3 附近

  • 改变选择:

def change_choice_test(n):
    """
    交换选择的门
    """
    result = {}
    game = MontyHall()
    for i in xrange(n):
        game.shuffle()
        game.make_choice()
        game.exclude_doors()
        game.change_choice()
        if game.check_result():
            result["yes"] = result.get("yes", 0) + 1
        else:
            result["no"] = result.get("no", 0) + 1
    for key in result:
        print "%s: %d" % (key, result[key])
    return result["yes"] / n

同一的点子绘图得到结果:

此地输入图片的讲述

概率分布:

这里输入图片的叙说

遂之几率都值当 2/3 附近

经过者的辨析与法可知最佳的方针当然就是换门。

返家好难。

进而尖锐的讨论

  • 假若家的数额不断是3只,如果是50鼓门也?

这边输入图片的讲述

这种气象下,主持人打开48鼓都是羊之门后,再让您拣,很多人数这个时节理应就是无见面固守那1/2,而会择换门
拿家的数额增大至100,1000,这种气象会愈发明朗。
或经过一致段落先后模拟说明:

def change_choice_test_large(n,m):
    """
    交换选择的门
    """
    result = {}
    game = MontyHall(m)
    for i in xrange(n):
        game.shuffle()
        game.make_choice()
        game.exclude_doors()
        game.change_choice()
        if game.check_result():
            result["yes"] = result.get("yes", 0) + 1
        else:
            result["no"] = result.get("no", 0) + 1
    for key in result:
        print "%s: %d" % (key, result[key])
    return result["yes"] / n


if __name__ == '__main__':
    logging.basicConfig(format='%(levelname)s:%(message)s', level=logging.WARNING)
    results = []
    test_num = 1000
    round_num = 1000
    for x in xrange(0,round_num):
        results.append(change_choice_test_large(test_num,50) )

结果:

这时候就要挑交换门

  • 欣逢这种情况本身生迷惑,我控制废弃硬币决定,这个时候成功之几率?

立马是第3种政策,成功的概率和硬币有关,也便是1/2,这种情况就算是自剩下的门中随机选相同扇,这个方针从点分析来拘禁无是极致好之,但是于无改之方针要好。
程序的学结果:

此处输入图片的叙说

这里输入图片的叙述

  • 准门意外打开的场面呢,也就是者描述的第二种情况(主持在不知门后的情状下打开门也)?

这种情景下实际就是是一个尺度概率,事件A是玩家最后开及之是车,事件B是主席打开的流派是羊。

盖只有主席开始至是羊的情下,玩家才出或上马及车所以

假设玩家首先潮选择的门为事件C

  • 未交换策略下的格概率是:

QQ截图20150510140602.png

  • 交换策略下之基准概率是:

用当主席不了解门后的事态下打开一扇,然后发现门后是羊之场面下,换门与不换门最终之票房价值都是1/2
抑或可以经过序开展效仿:

def unknown_doors_choice_test(n):
    """
    主持人并不知道门后面的情况随机的开门
    交换选择的门
    """
    result = {}
    game = MontyHall()
    continue_count = 0
    for i in xrange(n):
        game.shuffle()
        game.make_choice()
        game.random_exclude_doors()
        game.change_choice()
        if game.exclude_car == False:
            continue_count += 1
        if game.check_result():
            result["yes"] = result.get("yes", 0) + 1
        else:
            result["no"] = result.get("no", 0) + 1
    #for key in result:
    #    print "%s: %d" % (key, result[key])
    logging.info("continue_count: %d" % continue_count)
    if continue_count == 0:
        return 0.0
    return result["yes"] / continue_count   

此输入图片的叙述

这边输入图片的描述

每当这种情形下交换门也从不晋级成功之票房价值


阿西吧,抢票出哪些不为认知的暧昧?咱欠怎么买票回家?

总结

今日写的即首东西啊总算了解自己小时候之一个缺憾,人之直觉有时候是挺不可靠,要摆脱个人局限的体味才能够抱抱更甚的世界。
哟?看罢这些分析,你还觉得无惬意那你还可以起下面的参考中寻找再好之辨析,本文撰写过程有一部分的图样引用自一下的参阅,如果您还来问题欢迎您联系自身更是的座谈。

尽快票潮,不也认知的秘。

练习

脚是三门题材的一定量个翻版,引用自三门问题跟有关:

回家,对正常人说,一般同样年尽管一样次于,归心似箭。市场大,2018迎来总运力新大。

女孩的概率

  • 君结交一员新对象,问她是不是出儿女。她说有,有零星独。你问,有女孩吧?她说出。那么,两独还是女孩的概率是微?

报经:三分之一。因为老两独孩子的可能有四种植等可能:BB、GG、BG、GB(即男男、女女、男女、女男)。
因为我们都知道至少发生一个女儿,所以BB是勿可能的。因此GG是唯恐出现的老三只顶或的结果之一,所以个别单儿女都是姑娘的几率为三分之一。这对许了三门题材之第一种植状况。

  • 卿结交一各项新情人,问它是不是出男女。她说有,有个别只。你问,有女孩为?她说出。第二天,你看见它带来了一个略女孩。你问问她,这是公女儿吗?她说,是。她底少单子女还是女孩的概率是有些?

此概率和生女孩的几率一样,二分之一。这似乎特别奇怪,因为我们所独具的信看起并无比较第一种情形常常差不多,但概率也不同。但是此间的题材实际上是,那个你未曾>见了的男女是女孩的几率是多少?这个概率和非常女孩的票房价值一样,二分之一。
顿时对诺了三门问题之亚种植情况。当然这里呢起语言问题,必须要这号妈妈不是一定带起一个微女孩来被你看之。也就是说你仅仅是刚发现了她是个有点女孩。这取决于是判断选择
或q
随机选取。如果是叫您刚好遇上见就是属擅自选。这即对准许了三门题材之老二种植情况。这实际是多了信息之。否则如果她主动带一个聊女孩过来给您,则属于判断选择。
若取的答案依赖让所提的故事;它依靠让您是哪识破至少一个孩子是女孩的。

强需求 + 超高需求量 = 暴利。涉入其中者众,各备角色。

老三犯人问题

  • 亚当、比尔以及查尔斯被牵涉在一个看守所里,只有监狱看守知道谁会于判定死刑,另外两号将见面释放。有1/3的概率会为处死刑的亚当,给他妈妈写了扳平封信,想如果释放的比尔或查尔斯帮忙代寄。当亚当问看守他应有将他的信教交给比尔或查尔斯时,这号富有同情心的守好尴尬。他以为一旦他管将要获释的人数的讳告诉亚当,那么亚当就会见发出1/2底票房价值为判定死刑,因为剩下的人数以及亚当这半人受必有一个丁于行刑。如果他背这消息,亚当被处决的概率是1/3。既然亚当知道其他两人口遭遇得来平等口会晤释放,那么亚当自己叫杀的几率怎么可能会见为守告诉他别两丁面临受获释者的人名后如果反呢?

没错的答案是:看守不用当心,因为就把自由人之全名告诉亚当,亚当给处决的票房价值仍是1/3,没有改。但是,剩下的那位没为点名的食指即便时有发生2/3的概率为行刑(被杀的可能升高了)。如果这题材易一种说法,就是防守无意间说有了查尔斯不会见杀。那么几率就会发出变更。
这实际跟三门问题是一样的。你可管狱卒当成主持人,被处决当成是大奖,那么这是对准应于三门题材之首先种植情形,就是主席知道门后面的情。狱卒说发生哪位会被放飞,相当给主席打开一扇门。但是因为三囚徒问题不能够选择,也就一定给三门题材遭受之非换门的国策。最终之概率还是1/3凡从未起变更的。
为避免发出歧义,规定一下:
1.一旦(亚当,查尔斯)被释放,那么狱卒会告诉亚当:”查尔斯于放出”。
2.若(亚当,比尔)被假释,那么狱卒会报亚当:”比尔为放出”
3.如果(查尔斯,比尔)被保释,那么狱卒会以1/2底票房价值告诉亚当:”查尔斯于放飞”或者”比尔被假释”
意就是够呛引人注目了,在看守说出比尔为保释的尺度下,亚当给放走的概率是?用口径概率算一下。
概念事件:

A :狱卒说发生”比尔被释放”
B :代表亚当给放。

那么什么时才是1/2底概率也?
平整3更改为:如果(查尔斯,比尔)被放走,那么狱卒会报告亚当”比尔给保释”
这时节计算就是:

这就是说如若规则3改也:如果(查尔斯,比尔)被放走,那么狱卒会报亚当”查尔斯为假释”
其一时:亚当被放出的票房价值就见面变成1
题材在规则2跟规则3下蛋说”比尔为放飞”不是齐概率发生的。

头部黄牛。

好像之题目还有

  • 丢掉两朵硬币里起相同朵硬币是尊重,问两朵硬币都是正经的票房价值是?
  • 抛弃两朵硬币里第一枚硬币是正经,问两朵硬币都是端正的几率是?

the end.


1、巧用证明生成软件,预先筛选好可用证件,并记录入库(或直接进货材料),再打开抢票软件抢票。

参考:

  1. 承提霍尔问题 –
    维基百科,自由的百科全书

  2. 老三扇门问题 |
    左岸读书

  3. 承提霍尔问题(又如三门题材、山羊汽车问题)的正解是啊?

  4. 情趣编程:三门题材

  5. 三门问题以及相关

  1. 换还是勿换?争议没有止过之三门问题

  2. 每当「三门问题」中,参与者应该选「换」还是「不变换」?主持人是否清楚门后情形对结论有何影响?

  3. THE MONTY HALL
    PROBLEM

  4. 流言终结者第九季

  5. 某某家庭倍受发生 2
    单小孩,已了解其中一个凡是女孩,则其它一个是男孩的几率是小?-知乎

  6. 自贝叶斯定律的角度理解“蒙提霍尔题材”和“三独罪犯问题”

  7. 老三单囚徒问题,求解?


更新日志:

  • 2015-05-20 增加三幽闭徒问题之解答
  • 2015-05-09 第一次等做

大致眯算一哈:一般软件一样大计算机登录20独帐号,一个帐号同一时间抢5布置;软件特么还支持多起来,一尊计算机开10单,速度不给影响,理论及亦然令微机同一时间抢1000布置票,多宝微机也?

本人错,哪那么容易抢,我岂抢匪至?

1.1、验证码。

不好意思,购票软件大多会自行打码,打码一般采用人工打码团队,或者智能识别,后者速度为毫秒计。

1.2、帐号。

挂号几百上千底呼号,批量导入帐号挂机刷票,同时整上千摆,业内流弊的案例,直接一个车厢。

1.3、速度。

快,一个凡造访终端的网速,黄牛老鸟会一直100M,一般的用户为即2M,这排网速,你还快个毛线啊。

服务器,抢票一般采用技术手段,绕了12306底cnd负载,直接看服务器。

2、抢到之宗直接出售于客户,一般同样摆设加价几十首位。

首玩家,都怎么把票卖出去吗?

相似,头部老鸟,引流术还较粗暴,阿力推推提下最平常之站群打法。

2.1、批量购买站点。

2.2、批量生成二级域名,甚至三四级域名。

2.3、批量变动文章,巧用首页的权重,搭配链轮等办法,用所起站点首页做行。

其中,不乏寄生虫玩家。

2.1、直接get一些高权重站点ftp信息。

2.2、搭配软件批量变动栏目,无上限生成章页。

2.3、再就此蜘蛛池,吸引蜘蛛抓取收录页面,搭配链轮等措施,索取搜索引擎展现。

2.4、单页用抢票攻略之类的篇章,加上黑帽的手段,搜索引擎看攻略,用户打开调用的js页面,页面中显得抢票联系方式等消息。

末尾,客户购买,索要客户信息(证件、车次),再退票,再抢票。

退票,到再也抢票,有必然的消,这也随便碍。

小白兼职。

小白,要么做老鸟中介,赚取差价;要么就算开部分抢票软件,其实就是捡漏。

平常抢票软件,包括可无限量于铁友火车票App、智行火车票App、高铁管家App、携程App、掌及列车票App、360赶快票王(PC端)、吾易购票等。

此类打法,所谓的失信。就日前被新闻报道的那种,其实就是是代撸中介,和代别人撸贷一毛一样,参看《贷款app推荐:客户贷款您赚佣金,这个类别相当之稳!!!》。

该类,需要客户提供姓名、身份证号、车次信息,甚至12306账号及密码。其实只是凡专业点儿底中介,账号密码都用不着。

叠加:信息安全,东西不要到处让,别有用心的人头,通过撞库可以索取你再多之消息。

赶上库?参考《浮出水面的社工ku,都TM不入流的优,卖艺罢了!》。

证明?参考《骚年,个人征信登陆,少摇晃你的季桩套》。

中介,都怎么引流呢?

同其它涉入者差不多,论坛、贴吧、Q群等,各镇其能够。

以此种中介,一般为自行捡漏为主。

抢票软件。

工具,和《王思聪、奉佑生、周鸿祎、张一鸣撒币,你挣了小钱?谁而是可怜撒币?》中的直播答题异曲同工。卖工具的比中介赚得多,当然只是相对来说。

付出起来就是还狠一些。

1、宣传之时光,免费抢票软件。

2、拿到软件,抢匪顶票底时刻,让您一直充vip。不多,一年50状元。

3、vip后尚抢不至,没道高峰期,整个加速包吧。1首、10初、20长、50长相当于,不同档次不同速度。

随地出,最终或还是捡漏而已。

废品玩法。

因而垃圾,皆为纯粹的骗纸。

1、火车票合成器,直接行骗钱。

变化说并未人上当,世界如此老,到处都是韭菜。

2、索取帐号密码。

经撞库,索取到任何电商类平台,索取暴利。

3、售卖抢票软件。

丑的凡,下载一些软件,都特么捆绑软件,还静默安装,以游戏软件最为泛滥,你安装一个,别人就是获利10块钱。

啰嗦一拿:静默安装有插件,比如一些黑客二管刀子,需要ddos某个平台的早晚,恭喜你,你尽管是所谓的肉鸡;要么,就就此而的计算机做任何任务,绝对暴利,不过大凡打pc时代,到wap终端而已。

4、冒充内部人员,声称加价就能用票,又特么骗子。

外玩法略过。

怎抢票呢?

1、注册铁友火车票App、智行火车票App、高铁管家App、携程App、掌及火车票App、360快票王(PC端)等。

2、微调节点,比如目的地前后三立、备选车次、备选座席、跨站抢票、放大时间点等。

3、坐等app电话通知,一般更拢出发时,越爱下票。

理所当然,能偶尔遭遇确实心黄牛,亦可。无她,多被点钱虽推行。But,就怕找到的,都特么不指谱,全是代撸中介。