91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

通過遞歸的算法實現四川麻將的胡牌算法,這里講所有的牌進行排序,并調用遞歸的算法,判定這十四張牌是否能胡,能夠成功運行。

資源截圖

代碼片段和文件信息

//?Mahjong.cpp?:?定義控制臺應用程序的入口點。
//

#include?“stdafx.h“

/************************************************************************
排序:將條萬筒分別排序,并保存在原有的數組中
************************************************************************/
void?sort(char?*pint?n)
{
int?ij;
char?temp;
if?(n? for?(i?=?0;?i? {
for?(j?=?0;?j? {
if(p[j]>p[j+1])?
{
temp?=?p[j];
p[j]?=?p[j+1];
p[j+1]?=?temp;
}
}
}
return?;
}

/*******************************************************************************
找出相同的三個連續的牌,如果找到就剔除這三個牌,并返回真,
傳遞進來的數組元素比原來少了3個
如果沒有,返回假
*******************************************************************************/
bool?Group3Same(char?*pint?n)
{

char?*?q;
int?sp=0;
int?ij;
q?=?p;
if?(n?==?0)
{
return?true;
}
for(i?=?0;?i? {
if?(*(q?+?i?+?1)?==?*(q?+?i)&&?*(q?+?i?+?2)?==?*(q?+?i?+?1))
{
if?(i?==?n?-?3?) //把這三個元素移除,把后面的元素往前移動三格
{
*(q+i)?=?‘\0‘;
p?=?q;
return?true;
}
else
{
for?(j?=?i;j? {
*(q?+?j)??=??*(q?+?j?+?3)?;
}
*(q+j)?=?‘\0‘;
p?=?q;
return?true;
}
}
}
return?false;
}

/*******************************************************************************

找出順子,沒找到一組順子就把順子剔除,最后,返回數組中剩余的元素的個數,如果返回值為0,
能夠組合成若干個順子,可以胡牌,否則,不能組合成順子,不能胡牌

*******************************************************************************/
int?Group3Shunzi(char?*pint?n)
{
char?*q*w;
int?ijkmlsp?=?0;
m=0;
q?=?p;
w?=?p;
if?(?n?==?0)
{
return?0;
}
for(i?=?0;?i? {
for?(j?=?i+1;j? {
if?(*(q?+?j)?-?*(q?+?i)?==?1)
{
for?(k?=?j?+?1;?k? {
if?(*(q?+?k)?-?*(q?+?j)?==?1)
{

if?(i?==?n?-?3?) //把這三個元素移除,把后面的元素往前移動三格
{
*(q+i)?=?‘\0‘;
n?-=?3;
i--;
break;
}
else
{
*(q?+?i)?=?‘0‘;
*(q?+?j)?=?‘0‘;
*(q?+?k)?=?‘0‘;
for?(m?=?0l?=?0;l? {
if?(*(q?+?l)?!=?‘0‘)
{
*(w?+?(m++))?=?*(q?+?l);
}
}
n?=?m;
q?=?w;
i--;
break;
}
}
}
}
continue;
}
}
return??n;
}

/************************************************************************

遞歸調用組合函數
每次先進行順子組合,若不能成功,再進行三個相同的組合
找到一組三個相同的組合,在遞歸調用本函數,不斷的進行順子-三個相同?順子-三個相同
遞歸的次數不會超過四次,因為只有12張牌,每一次找到三個相同的牌,都會減少三張牌

************************************************************************/
bool?Group3S(char?*p?int?n)
{?
char?pp[14]p2[14];
int?ij;

for?(i?=?0;i? {
pp[i]?=?*(p?+?i);
p2[i]?=?*(p?+?i);?
}
bool?flag?=?false;
if?(n?==?0)
{
return?true;
}
if(!Group3Shunzi(pn))
return?true;
if?(Group3Same(p2n)) //順子出錯,就看看有沒有三個相同的,有就把三個相同的挑出來,在進行順子算法
{
n?-=?3;
flag?=?Group3S(p2n);
}
return?flag;

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2012-09-10?16:31??Mahjong\
?????目錄???????????0??2012-09-10?16:31??Mahjong\Debug\
?????文件???????33792??2012-09-10?16:31??Mahjong\Debug\Mahjong.exe
?????文件??????309368??2012-09-10?16:31??Mahjong\Debug\Mahjong.ilk
?????文件??????461824??2012-09-10?16:31??Mahjong\Debug\Mahjong.pdb
?????目錄???????????0??2012-09-10?16:31??Mahjong\Mahjong\
?????文件??????486400??2012-09-10?16:31??Mahjong\Mahjong.ncb
?????文件?????????887??2012-09-10?16:30??Mahjong\Mahjong.sln
?????文件???????12800??2012-09-10?16:31??Mahjong\Mahjong.suo
?????目錄???????????0??2012-09-10?16:31??Mahjong\Mahjong\Debug\
?????文件???????12298??2012-09-10?16:31??Mahjong\Mahjong\Debug\BuildLog.htm
?????文件?????????663??2012-09-10?16:31??Mahjong\Mahjong\Debug\Mahjong.exe.embed.manifest
?????文件?????????728??2012-09-10?16:31??Mahjong\Mahjong\Debug\Mahjong.exe.embed.manifest.res
?????文件?????????621??2012-09-10?16:31??Mahjong\Mahjong\Debug\Mahjong.exe.intermediate.manifest
?????文件???????14564??2012-09-10?16:31??Mahjong\Mahjong\Debug\Mahjong.obj
?????文件?????3211264??2012-09-10?16:31??Mahjong\Mahjong\Debug\Mahjong.pch
?????文件??????????67??2012-09-10?16:31??Mahjong\Mahjong\Debug\mt.dep
?????文件???????12193??2012-09-10?16:31??Mahjong\Mahjong\Debug\stdafx.obj
?????文件???????68608??2012-09-10?16:31??Mahjong\Mahjong\Debug\vc90.idb
?????文件??????126976??2012-09-10?16:31??Mahjong\Mahjong\Debug\vc90.pdb
?????文件????????6152??2012-09-10?16:31??Mahjong\Mahjong\Mahjong.cpp
?????文件????????4498??2012-09-10?16:30??Mahjong\Mahjong\Mahjong.vcproj
?????文件????????1427??2012-09-10?16:31??Mahjong\Mahjong\Mahjong.vcproj.XP-201109211453.Administrator.user
?????文件????????1183??2012-09-10?16:30??Mahjong\Mahjong\ReadMe.txt
?????文件?????????212??2012-09-10?16:30??Mahjong\Mahjong\stdafx.cpp
?????文件?????????233??2012-09-10?16:30??Mahjong\Mahjong\stdafx.h
?????文件?????????498??2012-09-10?16:30??Mahjong\Mahjong\targetver.h
?????目錄???????????0??2019-06-12?15:54??Mahjong\新建文件夾\

評論

共有 條評論