以文本方式查看主题 - 趣题之家 (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* 好像也不行,因为不晓得当前情况下大概还要走多少 才会完毕 |
|
|||