CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C语言

求麻将听牌算法

楼主laolong7(卧龙)2005-06-03 12:15:44 在 C/C++ / C语言 提问

麻将用int表示  
  给定13张牌,也就是一个int数组  
  算出所有可以听的牌。 问题点数:0、回复次数:2Top

1 楼DuoFG(多非光)回复于 2005-06-03 14:36:10 得分 0

upTop

2 楼nasi00(莫傲·逍遥)回复于 2005-06-04 03:01:00 得分 0

我有个方法:  
   
  for(i   =   0;   i   <   麻将的总数;   i++)  
  {  
        当前的牌   +   i   =>   14张牌  
        if(   和牌()   )  
              i为听牌  
  }  
   
  说白了就是挨个试试  
   
  那么问题的关键也就是如何判断和牌了,其实这个也不难:  
   
  对于14张牌,搜索一下,如果一张牌  
   
  比如“三万”,那么你就找是否有“四万”、“五万”或者“二万”、“四万”或者“一万”、“二万”可以和它拼成三个的。如果存在一个那就消掉,如果存在多个的话,那么就回溯一下,这样一直找下去,直到剩下两张牌,并且一样,这样就算找到解了。如果没找到,那么就不能和牌Top

相关问题

  • 求助:麻将胡牌判断算法
  • 关于麻将算法问题的再讨论
  • 求解发牌算法!
  • 求洗牌的算法
  • 复杂洗牌算法
  • 如何判断麻将中的14张牌是否能听牌
  • 求双扣的出牌算法。
  • 高分求发牌算法,UP有分
  • 怎么么实现洗牌算法啊??
  • 给出洗牌的一个算法

关键词

  • 牌
  • 麻将
  • 找到
  • 存在
  • 就是

得分解答快速导航

  • 帖主:laolong7

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo