//逐個檢查
var tingmaps = {};
console.log(tingmaps == {});
for (var i = 0; i < seatdata.holds.length; ++i)
seatdata.holds.push(t);
seatdata.countmap[t]++;
}console.log(tingmaps);
逐個檢查聽牌。
其實mj聽牌的思路捋順了很簡單的。
首先是手裡有十四張牌,打那張牌就模擬把哪一張牌去掉就可以了,這時遍歷14張,模擬去掉任意一張牌,剩13張牌。
然後再從34張牌裡面把每一張牌都嘗試新增到擁有的牌裡面,這時就是14張牌了。
這時看補得這張牌能不能胡,如果能胡,那麼這張牌就是在打出牌後聽牌要胡的牌。迴圈遍歷34次,看所有能胡的牌。
shift()去掉首牌,然後檢查是否聽牌胡牌,然後檢查完後還原,新增到陣列的最後麵用push()方法。
c 胡牌 聽牌
生成一張n維的圖去分析,比較容易一些 這個是2人麻將,4人麻將改幾個數值就可以用了 判斷胡牌的思路 比如 1 9萬,0x01 0x09 1 9筒 0x11 0x19 1 9條 0x21 0x29 東南西北中發白 0x31 0x39 花牌 0x41 0x48 弄乙個 arr 4 10 的陣列,做乙個牌...
麻將胡牌判決
胡牌有以下幾種情況 1 乙個對子 4組 3個相同的牌或者順子。只有m s p是可以構成順子的。東西南北這樣的牌沒有順子。2 7個不同的對子。3 1m,9m,1p,9p,1s,9s,1c,2c,3c,4c,5c,6c,7c.這13種牌每種都有,而且僅有這13種牌。肯定是有一種2張。其他的1張。首先是列...
麻將胡牌判決
就是給了13張牌。問增加哪些牌可以胡牌。胡牌有以下幾種情況 1 乙個對子 4組 3個相同的牌或者順子。只有m s p是可以構成順子的。東西南北這樣的牌沒有順子。2 7個不同的對子。3 1m,9m,1p,9p,1s,9s,1c,2c,3c,4c,5c,6c,7c.這13種牌每種都有,而且僅有這13種牌...