一个关于扑克牌游戏的算法

wutongjoe 2005-04-07 12:41:27
最近在玩一个扑克牌游戏,看着别人的名次超过我了,很郁闷,准备编写一个程序计算步骤!可惜失败了!


游戏规则:

52个扑克,没有大小Joker
牌面向上,摆成13堆,每堆4张牌(乱序),领外有两堆是空的(也就是一共有15堆,13满,2空)
每堆最多不能超过4个
移动纸牌的时候,只能将要移动的牌放在相同数字的牌上,或者空堆上,例如红桃6放在黑桃6上面,或者空堆上。
最终将所有数字一样的都放在同一堆上(4444,KKKK,9999……),一共13堆满,2堆空

我用穷举decision tree结构做的,可惜变化太多,而且还伴随着死循环问题(例如6-4-5-K-6)。

死循环我用回朔解决掉了,并且只判断100步以内的解决方法,竟然算了30多小时没有任何结果出来

AMD XP1700+ 512MB

至于程序本身我用小量级的变量测试过了,结果算法是可行的。

Q1:除了穷举decision tree,有没有其他更加优化的算法那?
Q2:这样的扑克排列组合一共有多少种可能那?
...全文
235 回复 打赏 收藏 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

23,404

社区成员

发帖
与我相关
我的任务
社区描述
Java 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧