21點:賭場裡最可能贏錢的遊戲
高階賭徒如何要牌
可以看到 21 點並不複雜,數學家們很容易找出最佳要牌策略。計算表明,最佳玩法使得玩家勝率達到 49% 左右。對職業賭徒來說,做到這點沒有什麼困難,所謂最佳玩法不過是 3 個矩陣,記下來就可以了。
上面 3個矩陣幾乎涵蓋了賭局上可能出現的所有情況。頂部橫排座標表示莊家首回合翻開牌的點數(T為10點)。第一個矩陣豎排最左列表示玩家當前手牌點數和, H 即 Hard,就是說要把手牌中的 A 當成 1 點來算(如果有的話),另外兩個矩陣豎排最左列表示的玩家手上的兩張牌是什麼。
剩下的矩陣元素就是玩家對應的最佳操作。其中 H 表示 Hit, S 表示 Stand, P 表示Split, D 表示 Double(如果規則不允許就Hit), Ds 表示 Double(如果規則不允許就Stand)。
仔細觀察上面 3 個矩陣,許多要牌策略稍加思考就可明白。但也有一些很有意思的地方,比如說當手牌和為 12 時,莊家牌面為 2 或 3 要 Hit, 4 到 6 要Stand,當莊家牌面更大時則應堅決要牌。
為什麼會這樣?什麼時候要牌什麼時候不要,概率說了算。不妨讓我們先來看看玩家 12 點時 Stand 的勝率。莊家開始抽牌後,點數和大於等於 17 才會停止。這時玩家要獲勝只能寄希望於莊家爆牌。
如果莊家起始點數大於等於 17,根本不用抽牌。點數和為 H16 時,抽到 6~T 會爆掉。我們知道,抽到不同大小的牌的概率是相等的(1/13),設 F(x) 是當前點數和為 x 時繼續抽牌爆掉的概率,那麼:
F(H16) = 8/13 = 0.61538
當莊家手牌點數和為 H15 時,抽到 7~T 爆掉;抽到 A 就化歸成了 H16 的情況:
F(H15) = 7/13 + 1/13×F(H16) = 0.58580
同理可算出 H14 到 H6 的爆牌概率。當莊家手牌和為 H5 時,情況又有所不同,這時 A 可以被算作11點,把這個變化考慮進來後,也不難算出 H2—H5 的情況。
那如果是玩家選擇 Hit 呢?這時有兩種獲勝情況:
玩家沒爆但是莊家爆牌 玩家和莊家都沒爆但莊家點數小
爆牌的概率已經算過,現在來考慮比大小這種情況。如果莊家第一張牌為 2,令 G(x) 為莊家得到點數和為 x 的手牌的概率,則 G(H2) = 1。
如果莊家手牌和變為 H3,只能是在 H2 的情況下抽到一張 A,即:
G(H3) = 1/13×G(H2) = 0.07692
類似地可算出 H4 到 H 21 的概率,依然要注意 A 算成 11 點的情況。在雙方都沒爆牌的情況下,玩家通過比大小獲勝只有以下幾種可能:
玩家拿到21點,莊家拿到20~17點 玩家拿到20點,莊家拿到19~17點 玩家拿到19點,莊家拿到18和17點 玩家拿到18點,莊家拿到17點
玩家從 12 點開始抽牌,拿到 18 點,相當於從 H2 開始抽,拿到 H8,因此概率為G(H8),而莊家拿到 17 點的概率 G(17)。據此情況4的概率為:
P4 = G(H8)×G(17)
同理可以算出P3,P2,P1。因此在玩家手牌和為 H12,莊家第一張牌為 2 的情況下玩家選擇 Hit 的獲勝概率為:
P(H) = P1 + P21 + P22 + P23 + P24 = 0.36958
前面算過,此情況下選擇 Stand 獲勝的概率 P(S) = F(H2) = 0.35831
P(H) > P(S),所以 Hit 為最優策略。
用同樣的方法我們可以算出玩家手牌和為 H12 時莊家第一張牌為 H3~H11 時玩家選擇 Hit 獲勝的概率。把所有情況都算出來,就得到如下的表格:
相關推薦
21點:賭場裡最可能贏錢的遊戲
高階賭徒如何要牌 可以看到 21 點並不複雜,數學家們很容易找出最佳要牌策略。計算表明,最佳玩法使得玩家勝率達到 49% 左右。對職業賭徒來說,做到這點沒有什麼困難,所謂最佳玩法不過是 3 個矩陣,記下來就可以了。 上面 3個矩陣幾乎涵蓋了賭局上可能出現的所有情況。頂部橫排座標表示莊家首回合翻開牌的點數(
【原創】新韭菜日記4---股市裡賭徒的宿命:輸錢從贏錢起?
股市裡賭徒的宿命:輸錢從贏錢起? -----為什麼我也遇到了這個怪圈 前提情景:第1次確實小賺了點,但是接著投入後就虧了一筆 行為模式:是因為盈利會被自己選擇性的記憶為起點? &nb
(21)進階:JS 裡的資料
js的歷史 資料型別 谷歌搜尋 方應杭 es5 特性 進階:JS 裡的資料 optional chain 的用法 console.log(obj?.a?.b?.c?.name) JS的資料型別
牛客網線上程式設計(21):連續最大和-python
序言 這是2017年滴滴的一道題目,但是2018年出現了它的變種題目,我會同時為大家提供出本題和變種後題目的程式碼 題目描述 一個數組有 N 個元素,求連續子陣列的最大和。 例如:[-1,2,1]
線段樹基礎:單點更新,區間最值(和)查詢
單點更新,區間查詢 線段樹可以解決一類區間問題,例如最基礎的單點更新,區間最值查詢。 程式碼如下: #include<bits/stdc++.h> using namespace std; const int maxn = 10000; //原
JS:求點與線段的最短距離,並返回該最短距離線上段上的座標。
直接上程式碼: function PointToLineDistance (xx, yy, x1, y1, x2, y2) { let ang1, ang2, ang, m; let result = 0; // 分別計算三條邊的長度 const a = Mat
美團 CEO 王興:從 0 到幹到 300 億美金,格局上輸了,再多努力都不可能贏
2017 年 10 月 19 日,美團點評完成新一輪 40 億美元融資,投後估值 300 億美元。 此次融資由騰訊領投,引入了新的戰略投資方 The Priceline Group,其他主要投資人包括:紅杉資本(Sequoia Capital)、新加坡政府
Python 小技巧:Python3 表示最大整數值和浮點數值
一、引言 這是我在學習 《Python Algorithms 2nd》 一書中第 28 頁時候受到的啟發: For intergral weights, you could use sys.maxint , even though it’s not g
Android SeekBar 禁止拖動和點選的實現(可能是最簡單完美的實現)
在播放線上音訊時,需求是不能拖動進度條,讓音訊自然播放。 實現就很簡單了,不要和網上的那樣重寫onTouchEvent,沒有必要的,所以一定要了解Android的觸控機制。 直接監聽SeekBar
展望未來:今後十年可能誕生的21個新工作
幾千年來,工作對人類來說必不可少,以後也將始終如此。它不斷變化,以適應我們所處的時代。未來10年
C、C++資料型別(int, long, short, char, long long) 的取值範圍、最大最小值:climits 裡的一些巨集
#include <iostream> #include <climits> using namespace std; int main() { cout << "int is " <<sizeof
人生感悟:影響人成功和幸福的21點
1. 哈佛有一個著名的理論:人的差別在於業餘時間,而一個人的命運決定於晚上8點到10點之間。每晚抽出2個小時的時間用來閱讀、進修、思考或參加有意的演講、討論,你會發現,你的人生正在發生改變,堅持數年之後,成功會向你招手。不要每天抱著QQ/MSN/遊戲/電影/肥皂劇……奮鬥
痞子衡嵌入式:IVT裡的不同entry設定可能會造成i.MXRT1xxx系列啟動App後發生異常跑飛
---- 大家好,我是痞子衡,是正經搞技術的痞子。今天痞子衡給大家分享的是**IVT裡的不同entry設定可能會造成i.MXRT1xxx系列啟動App後發生異常跑飛問題的分析解決經驗**。 事情緣起恩智浦官方論壇上的一個疑問帖 [《RT1015 dev_cdc_vcom_freertos res
迅雷程浩:痛點不痛,剛需不剛,是90%創業項目的通病(剛需就三點:要麽極大地提高效率,要麽極大地降低成本,要麽極大地提升體驗)
大公司 資源 https data 通信 免費 減肥 聊天 log 首發|黑馬學院 heima_ying;口述|程浩;整理|醬紫君 本文由創業家根據程浩在黑馬營的演講素材整理而成。轉載請聯系創業家獲得授權(微信 ID:chuangyejia) 前言 2
POJ 1861:Network(最小生成樹&&kruskal)
nis bool cmp edge his table int pst 應該 Network Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 13266 Accepted: 5
RabbitMQ系列教程之一:我們從最簡單的事情開始!Hello World
model 系列教程 退出 utf 忽略 是你 必須 using chan 一、簡介 RabbitMQ是一個消息的代理器,用於接收和發送消息,你可以這樣想,他就是一個郵局,當您把需要寄送的郵件投遞到郵筒之時,你可以確定的是郵遞員先生肯定會把郵件發送到需要接收郵件的
(hdu step 7.1.7)Wall(求凸包的周長——求將全部點圍起來的最小凸多邊形的周長)
esp minimal gree follow inpu clas foo sed sig 題目:WallTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Tot
hdu2795(線段樹單點更新&區間最值)
ref 當前 廣告 sed gif .cn lap ostream spa 題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=2795 題意:有一個 h * w 的板子,要在上面貼 n 條 1 * x 的廣告,在貼第 i 條廣
老男孩教育每日一題-第70天-shell腳本優化點:
判斷腳本 腳本優化 每日一題 題目參見以下腳本:#!/bin/bash grep oldboy /etc/passwd &>/dev/null REVAL=$? if [ $REVAL -eq 0 ] then echo "oldboy user already exist
老男孩教育每日一題-第73天 -基礎命令點:可惡的^C
取消ctrl+c 每日一題 ^c 題目背景:很多運維的朋友都遇到過一個問題,輸入一串命令,每次按下ctrl+c都會出現一個比較麻煩的字符信息^C請問有什麽方法可以不讓^C字符信息出現呢?解決方法:利用stty命令即可解決:中斷不顯示^C: stty -echoctl終端顯示^C: stty