麻將胡牌判決

2021-07-05 05:32:05 字數 1252 閱讀 2212

就是給了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種牌。肯定是有一種2張。其他的1張。

首先是列舉18+7=34張牌,加進去構成14張牌,判斷胡牌。

胡牌判斷如下。

對於第一種情況:列舉每乙個對子。然後按照順序找3張相同或者順子。如果有三種相同的,構成3張相同的。沒有就看能不能和後面的構成順子。一定要按照順序從小到大找過去。 1c```7c只能構成3張一樣的。然後判斷是不是剛好找到4組。

對於第二種情況:就是要每一種牌的數量要麼是0,要麼是2,這樣一定是7個不同的對子了。

對於第三種情況:就是要讓這13種牌的數量不等於0,而且其他牌的數量為0;

#include#include

#include

#include

using

namespace

std;

int cnt[35

];bool

judge4x3()

while(j+2

<9 && tmp[i+j] && tmp[i+j+1] &&tmp[i+j+2

])

}for(int j=0;j<7;j++)

}if(ret==4)return

true

;

return

false;}

bool

judge1()

cnt[i]+=2

; }

}return

false;}

bool

judge2()

return

true;}

bool

judge3()

return

true;}

bool

judge()

intmain()

tol=0

;

for(int i=0;i<34;i++)

if(tol==0)printf("

nooten\n");

else

printf("\n

");}

}return0;

}

麻將胡牌判決

胡牌有以下幾種情況 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張。首先是列...

麻將胡牌演算法

majiang algorithm是帶多張鬼牌的通用胡牌演算法,採用查表方式,簡單高效。在生成表的階段,時間是不值錢的,所以生成方法我們可以任意窮舉。首先分為普通 風 箭三張表。窮舉出所有的key,比如普通表,就是000000000 444420000,因為每一種牌最大4張,且總和不超過14張牌。對...

麻將胡牌演算法 C

這裡只介紹普通的麻將胡牌演算法,也就是7個對子或者 1個對子 3 n n 三個順子或者三個一樣的 其中字牌 東南西北中發白 不能算順子。首先對於每張牌 它有牌的的數字 1 9,牌的種類 萬條筒以及字 所以先封裝乙個牌的包裝類。如果要和伺服器互動的話就應該給這個類序列化 即加上system.seria...