以文本方式查看主题

-  趣题之家  (http://qthome.org/bbs/index.asp)
--  算法艺术  (http://qthome.org/bbs/list.asp?boardid=38)
----  一个关于扑克牌游戏的算法  (http://qthome.org/bbs/dispbbs.asp?boardid=38&id=309)

--  作者:wutongjoe
--  发布时间:4/7/2005 1:10:46 PM

--  一个关于扑克牌游戏的算法
最近在玩一个扑克牌游戏,看着别人的名次超过我了,很郁闷,准备编写一个程序计算步骤!可惜失败了!





游戏规则:



52个扑克,没有大小Joker

牌面向上,摆成13堆,每堆4张牌(乱序),领外有两堆是空的(也就是一共有15堆,13满,2空)

每堆最多不能超过4个

移动纸牌的时候,只能将要移动的牌放在相同数字的牌上,或者空堆上,例如红桃6放在黑桃6上面,或者空堆上。

最终将所有数字一样的都放在同一堆上(4444,KKKK,9999……),一共13堆满,2堆空



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



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

不能从中间拿牌,例如最下面是4的一堆牌4567,你只能拿7放在其他的7上面,并且每堆不能超过4张牌。



AMD XP1700+ 512MB



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



Q1:除了穷举decision tree,有没有其他更加优化的算法那?

Q2:这样的扑克排列组合一共有多少种可能那?



?



唉!!~~~~~我已经想了大半个月了,郁闷死了!!
我的排名已经掉到17名了
http://www.burningmonkey.com/rankings.php?game=29

还好我的准确率是最高的(纯人脑计算 T_T )



--  作者:wutongjoe
--  发布时间:4/10/2005 11:46:39 AM

--  
没人么?用A* 好像也不行,因为不晓得当前情况下大概还要走多少 才会完毕



网上贸易 创造奇迹! 阿里巴巴 Alibaba

Powered By Dvbbs Version 7.1.0
Copyright ©2003 - 2006 QTHome.Org
页面执行时间 00.10938 秒, 3 次数据查询
本论坛采用阿里巴巴支付宝网上银行支付系统,安全、可靠、便捷