當前位置:首頁 » 操作系統 » 日本演算法

日本演算法

發布時間: 2025-02-11 04:47:38

1. 日本麻將的點數計算

設符數為m,翻數為n,基本點為a,根據式子a=m×2^(n+2)計算出a的數值。如果a超過2000,就稱為「滿貫」,此時按a=2000算。但這種演算法的前提是翻數為1至4。翻數如果達到5翻或以上,則點數與符數無關,只看翻數就夠了。
5翻(滿貫)時,取a=2000。
6至7翻(跳滿)時,取a=3000(滿貫的1.5倍)。
8至10翻(倍滿)時,取a=4000(滿貫的2倍)。
11至12翻(三倍滿)時,取a=6000(滿貫的3倍)。
13翻及以上時,先計算翻數除以13,所得的結果取整數(直接取出整數部分即可,不要四捨五入),設取出的整數為N,稱為「N倍役滿」。「1倍役滿」簡稱「役滿」。取a=8000×N(滿貫的4倍,然後乘以役滿的倍數N)。
算出a之後,開始計算點數:
莊家食和時,點炮者支付的點數:a×6(只有點炮者一人支付點數)。
莊家自摸時,閑家每人支付的點數:a×2。
閑家食和時,點炮者支付的點數:a×4(無論點炮者是莊家還是閑家)。
閑家自摸時,另兩個閑家每人支付的點數:a×1,莊家支付的點數:a×2。
如果算出的結果不是100的整數倍,就進位到百位。 例1:閑家自摸,70符2翻,a=70×2^(2+2)=1120,另兩個閑家每人支付的點數:a×1=1120,進位到百位則為1200,莊家支付的點數:a×2=1120×2=2240,進位到百位則為2300(閑家自摸時,點數常按「閑家·莊家」格式記,本例中記作「1200·2300」)。
例2:莊家自摸,40符4翻,a=40×2^(4+2)=2560,超過2000,達到滿貫,取a=2000,閑家每人支付的點數:a×2=2000×2=4000(莊家自摸時,通常在點數之前加「每人」,本例中記作「每人4000」)。
例3:閑家食和,9翻,a=4000,點炮者支付的點數:a×4=4000×4=16000。
例4:莊家食和,15翻,15÷13取整數為1,a=8000×1=8000,點炮者支付的點數:a×6=8000×6=48000。
按上述方法算出點數後,還要加上「本場」增加的點數(通常叫做「本場費」),才是最終結果。
食和時,一本場加300,二本場加600,三本場加900,依此類推,增加的點數全部由點炮者支付。
自摸時,一本場每人加100,二本場每人加200,三本場每人加300,依此類推。
例如,11600在一本場就是11900,每人3900在三本場就是每人4200,2000·4000在二本場就是2200·4200。
另外還要提兩個概念: 普通役種的翻數累加至13翻或以上,由此形成的役滿稱為「累計役滿」(數え役滿)。注意:不要把復合役滿與累計役滿混為一談。
多數規則中,累計役滿不允許多倍役滿,這樣從13翻起全算1倍役滿,即使翻數達到26翻也不能算2倍役滿(也有允許累計役滿達到多倍役滿的)。也有部分規則不承認累計役滿,這樣從11翻起全算三倍滿。
上面所說的都是針對累計役滿的。做出役滿役種或復合役滿時,不受以上限制。
莊家和牌點數速查表(括弧內是自摸時每一個閑家支付的點數量): 20符 25符 30符 40符 50符 60符 70符 80符 90符 100符 110符 1翻 1000
(-) - 1500
(500) 2000
(700) 2400
(800) 2900
(1000) 3400
(1200) 3900
(1300) 4400
(1500) 4800
(1600) 5300
(-) 2翻 2000
(700) 2400
(-) 2900
(1000) 3900
(1300) 4800
(1600) 5800
(2000) 6800
(2300) 7700
(2600) 8700
(2900) 9600
(3200) 10600
(3600) 3翻 3900
(1300) 4800
(1600) 5800
(2000) 7700
(2600) 9600
(3200) 11600
(3900) 滿貫
12000
(4000) 4翻 7700
(2600) 9600
(3200) 11600
(3900) 5翻 6翻
7翻 跳滿
18000
(6000) 8翻
9翻
10翻 倍滿
24000
(8000) 11翻
12翻 三倍滿
36000
(12000) 13翻以上 役滿
48000
(16000) 閑家和牌點數速查表(括弧內是自摸時的點數,上段為另兩閑家每人支付的點數,下段為莊家支付的點數): 20符 25符 30符 40符 50符 60符 70符 80符 90符 100符 110符 1翻 700
(-) - 1000
(300,
500) 1300
(400,
700) 1600
(400,
800) 2000
(500,
1000) 2300
(600,
1200) 2600
(700,
1300) 2900
(800,
1500) 3200
(800,
1600) 3600
(-) 2翻 1300
(400,
700) 1600
(-) 2000
(500,
1000) 2600
(700,
1300) 3200
(800,
1600) 3900
(1000,
2000) 4500
(1200,
2300) 5200
(1300,
2600) 5800
(1500,
2900) 6400
(1600,
3200) 7100
(1800,
3600) 3翻 2600
(700,
1300) 3200
(800,
1600) 3900
(1000,
2000) 5200
(1300,
2600) 6400
(1600,
3200) 7700
(2000,
3900) 滿貫
8000
(2000,
4000) 4翻 5200
(1300,
2600) 6400
(1600,
3200) 7700
(2000,
3900) 5翻 6翻
7翻 跳滿
12000
(3000,
6000) 8翻
9翻
10翻 倍滿
16000
(4000,
8000) 11翻
12翻 三倍滿
24000
(6000,
12000) 13翻以上 役滿
32000
(8000,
16000)

2. 關於日本麻將算點

簡單演算法 符數*2^(番數+2),如果莊家再*6(2+2+2),閑家*4(1+1+2),得到的數取百位整數,只入不舍,以上
符數 1番 2番 3番 4番
20 700 1300 2600 5200
30 1000 2000 3900 7700
40 1300 2600 5200 8000
50 1600 3200 6400 8000
60 2000 3900 7700 8000
70 2300 4500 8000 8000
……
5番 8000(稱為滿貫,之後無視符數)
6-7 12000 稱為跳貫
8-10 16000 稱為倍滿
11-12 24000 稱為三倍滿/倍倍滿
13+ 32000 役滿
兩倍役滿 64000
N倍役滿 N*32000
……
(莊家的話乘1.5)

如11600是30符4番(或是60符3番,不常見)
30*2^(4+2)=1920,莊家*6就是11520,入到百位11600

符數演算法
符底20,門前點炮為30。
每個明刻2,暗刻4,明杠8,暗杠16,幺九刻加倍。
順子無符。
雀頭為役牌時2符,雙風時有規則可承認4符。
自摸2符(平胡有番時默認規則不記)。
坎張、邊張、吊雀頭2符。
綜上加得出最後符數,入到十位。(如32->40)

3. 日本畫線演算法 原理

這不是新的演算法,它和我們的乘法豎式其實是一樣的。
算交點數就能得出乘法的結果,這不奇怪,
從最簡單的乘法看,比如1x3=3,
你在橫向
劃一條線,縱向劃三條線,交點數當然是3個。

熱點內容
求三端類引擎可編譯的源碼 發布:2025-02-11 15:20:01 瀏覽:467
sql2000質疑 發布:2025-02-11 14:52:21 瀏覽:521
se94se頁面訪問升級版 發布:2025-02-11 14:49:42 瀏覽:805
java是否包含字元串 發布:2025-02-11 14:45:24 瀏覽:52
聚寶齋腳本 發布:2025-02-11 14:35:00 瀏覽:972
地址管理編輯伺服器信息 發布:2025-02-11 14:34:10 瀏覽:789
虎牙直播什麼配置 發布:2025-02-11 14:32:29 瀏覽:619
修改linux的時間 發布:2025-02-11 14:32:28 瀏覽:205
編程做古詩 發布:2025-02-11 14:31:36 瀏覽:309
以程序存儲和 發布:2025-02-11 14:25:20 瀏覽:468