21點規則,策略及算法參考
21點算法
。 21點規則
遊戲由玩家和莊家(即賭場的發牌員)對玩,看誰的牌面點數更靠近21點。但如果超過了21點,則稱為「爆掉」,算輸。其中花牌(J,Q,K)都算10點,A可以算1點,也可以算11點,看哪種情況更有利。玩家之間不做比較。
遊戲開始時,所有玩家和莊家各拿兩張牌,一般來説,是玩家兩張牌牌面朝上,莊家一張牌面朝上,一張牌面朝下。
兩張牌的點數,肯定介於2到21點之間。21點只可能是一張10(包括J,Q,K,下同)和一張A,這叫「天成(BlackJack,以下簡稱BJ)」,除非莊家也拿到了BJ,不然贏一倍半的賭注。
玩家在遊戲中有如下選擇: (1)要牌,直到他(或她,下同)認為自己的牌面離21點足夠近了。比如手頭的牌是4和5,加起來才9點,那麼無論再加張什麼牌,都不會爆掉,當然應該要牌。 (2)停牌,即不再要牌,比如手頭是張10和9,已經很接近21點了,就不用再要牌了。 (3)加倍,即加一倍賭注,再要且僅要一張牌。比如手頭是張4和7,這時要牌是肯定安全的,而且很可能拿到10或者其他點數較大的牌,一張就夠了,值得加倍。這只能在剛拿到兩張牌時使用,要過牌後就不能加倍。 (4)分牌,即拿到兩張點數相同的牌時,可以加一份賭注,把牌分為兩份,比如手頭是兩張8,加起來是16,非常糟糕的點數,這時就應該把牌分為兩個8,再要兩張牌來,很可能拿到10形成18點,就把壞牌變成好牌了。 (5) 保險,即在莊家亮着的牌是A時,由於他拿到BJ的幾率很大,玩家可以下賭注一半的保險。如果莊家沒有拿到BJ,保險金就輸掉了,如果莊家拿到了BJ,付給 玩家兩倍保險金。很多玩家在自己拿到BJ的情況下,會下賭注一半的保險,以保證自己能贏回一倍賭注,因為如果莊家沒有BJ,那他能贏賭注的一倍半,去掉輸 掉的半倍保險,還贏一倍賭注;如果莊家有BJ,那他們牌面打平,但保險能賺回一倍賭注。 (6)投降,這時只輸一半賭注。如果自己的牌是10和6,莊家亮着的牌是A,那還是趁早投降好。
莊家在手頭的牌是A時,會問大家是否要保險,然後檢查自己的牌是否BJ。如果手頭的牌是10,也會檢查是否BJ,但這時玩家就不能買保險了。
如果玩家要牌爆掉,算輸,莊家當場收掉他的賭注。
當所有的玩家都做出選擇後,莊家的玩法是固定的:亮出底牌,如果點數不到17點,則必須要牌,直到超過了16點或爆掉為止。
如果雙方都還沒有爆掉,則更接近21點的那個勝,如果雙方點數相同,則算打平。
21點策略
規則為:莊家在軟17點時停止、無限分牌加倍、允許投降。
為了方便分析,我們先假設52張牌出現的概率始終相同,也就是説每張牌都是從一個無窮多副牌組成的牌盒裏抽出來的,或者説前面出過的牌不影響後面的牌,換句話説,每張牌相互之間都是獨立的。
在上述規則下,基本策略為:
以下點數都是所謂「硬點數」,即不包括A或A算1點,以後如果不特別指明,各點都指「硬點數」。 莊家:2 3 4 5 6 7 8 9 10 A 玩家點數: <=8 H H H H H H H H H H 9 H D D D D H H H H H 10 D D D D D D D D H H 11 D D D D D D D D D H 12 H H S S S H H H H H 13 S S S S S H H H H H 14 S S S S S H H H H H 15 S S S S S H H H R H 16 S S S S S H H R R R >=17 S S S S S S S S S S 其中H表示「要牌(Hit)」,S表示「停牌(Stand)」,D表示「加倍(Double down)」,R表示「投降(suRrender)」。
手中有A,而且A算11也不會爆掉,就是所謂「軟點數」,應該運用下面這個表格: 莊家:2 3 4 5 6 7 8 9 10 A 玩家 13 H H H D D H H H H H 14 H H H D D H H H H H 15 H H D D D H H H H H 16 H H D D D H H H H H 17 H D D D D H H H H H 18 S DS DS DS DS S S H H H >=19 S S S S S S S S S S 「D」和「DS」都表示加倍,在不可以加倍的情況下,「D」表示要牌,「DS」表示停牌。
最後是分牌策略: 莊家:2 3 4 5 6 7 8 9 10 A 玩家 A,A P P P P P P P P P P 2,2 H H P P P P H H H H 3,3 H H P P P P H H H H 4,4 H H H P P H H H H H 5,5 D D D D D D D D H H 6,6 H P P P P H H H H H 7,7 P P P P P P H H H H 8,8 P P P P P P P P P P 9,9 P P P P P S P P S S 10,10 S S S S S S S S S S
其中P表示「分牌(sPlit)」。
二十一點算牌法
二十一點能夠算牌,是因為我們在討論「基本策略」時提出的一個假設不成立:
假設52張牌出現的概率始終相同,也就是説每張牌都是從一個無窮多副牌組成的牌盒裏抽出來的,或者説前面出過的牌不影響後面的牌,換句話説,每張牌相互之間都是獨立的。 顯然,不可能有這樣的由無窮多副牌組成的牌盒,前面出過的牌總會影響後面的牌。在算牌法剛出現的時代,賭場仍然使用 一副牌來玩二十一點,那麼這個影響就更明顯。比如,發牌員發出牌來,你拿到兩個10(包括J、Q、K),莊家亮牌也是10,翻出底牌來還是10,那麼下一 輪裏10出現的概率已不再是4/13,而是12/48,即1/4,略低於4/13。同樣的,其他點數出現的概率也已不再是1/13,而是1/12。
使用一種叫「高低法(High-Low)」的算牌法。在遊戲過程中,我們把每一張出現的2,3,4,5,6都 算+1點,7,8,9算0點,10,J,Q,K,A算-1點,將各點相加,結果越大,就表示前面出現過的小牌越多,對玩家越有利。反過來,如果結果是個負 數,就表示前面出過的大牌比小牌多,對莊家有利。
比如前面出現的牌是:
那麼點數就是4張小牌減7張大牌,是-3。當然,在遊戲過程中,你不可能叫莊家把牌局暫停,讓你從容加減。你必須在每張牌出來時,就在心裏默算點數。比如在上面的例子裏,從第一張牌出現開始,你就應該在心裏默算出:
算法實現
最後編輯於 :