记录一下麻将的通用麻将胡牌公式算法实现只要满足M x ABC + N x DDD + EE 即可麻将胡牌公式。
在这里先分析一下最简单的麻将胡牌公式思路:先找出所有可能的将牌若除去两张将牌之外嘚所有牌都能成扑,则可麻将胡牌公式
将牌就是公式里唯一的对子EE、扑的意思是一套牌顺子ABC或者刻子DDD。
将牌的查找:遍历每张手牌若囿两张以上相同牌就能作将,或者用一张癞子凑也可
接下来就只要判断一副牌是否成扑,伪码如下:
只要思路清晰了算法就很简单为什么只考虑第一张牌?其实函数内部递归调用了每张牌都会计算到的除非没牌了。下面给出详细代码:
下面是判断麻将胡牌公式的函数:
这里做一下两个输入参数的说明: