2015华为软赛(五)——基本功能函数

本文介绍了2015年华为软件精英挑战赛中关于德州扑克AI的部分,主要涉及手牌识别和牌型判断的函数实现。通过UpdateCards函数识别不同圈的手牌,并使用如IsFour、IsStraight、IsFlush等函数评估牌力。虽然算法简单,但确保了比赛需求的满足。
摘要由CSDN通过智能技术生成

点滴记录总结,一天一打鸡血。

2015年5月华为组织了一次软件精英挑战赛,赛题是德州扑克手牌AI~

环境及测试说明:http://pan.baidu.com/s/1dD2dL0P

这一节说一些基本的功能函数,又是基本,对的,在此基础上,下一节会给点比介个复杂点的函数。说起来真是惭愧,没有像李博士、收割机之流有那么高大的算法,要说算法的话,倒是有个,rand()!!!想想研一的概率算法算是白学了,囧~~

先回忆一下基本流程,是这样:

  1. 向服务器注册(连接部分之前说过);
  2. 服务器发送座次信息,需要识别,这节不讨论;
  3. HOLD圈服务器发送手牌信息(2张),需要识别,在此讨论;
  4. 服务器发送inquire消息,不讨论;
  5. 手牌发送决策,不讨论;
  6. FLOP圈服务器发送公牌消息(3张),需要识别,在此讨论;
  7. 同4、5;
  8. TURN圈发送公牌消息(1张),需要识别,在此讨论;
  9. 同4、5;
  10. RIVER圈发送公牌消息(1张),需要识别,在此讨论;
  11. 同4、5。

这一节主要辨识牌型,识别牌力。于是给出了下面这些函数:

void    UpdateCards (const char *recv, int flag);
void    UpdateCardType (int flag);
void    FlopCardType ();
void    TurnCardType ();
void    RiverCardType ();

int     IsStraight(int card[], int start, int len);
int     IsFlush(int type[],int start, int len);
int     IsFour(int card[], int start, int len);

int     Max(int x, int y);

上面函数不需要过多解释,名字起的好就是省事呐。

函数UpdateCa

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值