来源于日本论坛的一套用于麻将的判断胡牌算法,运用查表方式实现。原文链接(http://hp.vector.co.jp/authors/VA046927/mjscore/mjalgorism.html)
原算法是java实现,这里移植为lua版本。
移植为lua版本的代码如下
local M = {}
local MAN1 = 0
local MAN2 = 1
local MAN3 = 2
local MAN4 = 3
local MAN5 = 4
local MAN6 = 5
local MAN7 = 6
local MAN8 = 7
local MAN9 = 8
local PIN1 = 9
local PIN2 = 10
local PIN3 = 11
local PIN4 = 12
local PIN5 = 13
local PIN6 = 14
local PIN7 = 15
local PIN8 = 16
local PIN9 = 17
local SOU1 = 18
local SOU2 = 19
local SOU3 = 20
local SOU4 = 21
local SOU5 = 22
local SOU6 = 23
local SOU7 = 24
local SOU8 = 25
local SOU9 = 26
local TON = 27
local NAN = 28
local SHA = 29
local PEI = 30
local HAK = 31
local HAT = 32
local CHU = 33
local PRINT_MAP = {
[0] = "一万",
[1] = "二万",
[2] = "三万",
[3] = "四万",
[4] = "五万",
[5] = "六万",
[6] = "七万",
[7] = "八万",
[8] = "九万",
[9] = "一条",
[10] = "二条",
[11] = "三条",
[12] = "四条",
[13] = "五条",
[14] = "六条",
[15] = "七条",
[16] = "八条",
[17] = "九条",
[18] = "一筒",
[19] = "二筒",
[20] = "三筒",
[21] = "四筒",
[22] = "五筒",
[23] = "六筒",
[24] = "七筒",
[25] = "八筒",
[26] = "九筒",
[27] = "东风",
[28] = "南风",
[29] = "西风",
[30] = "北风",
[31] = "红中",
[32] = "发财",