【编程游戏】编写一个会划拳的机器人参加擂台赛,规则内详。路过有分。
我们来玩一个类似“Robocode”的游戏。
划拳规则看完了,那我们就开始写一个会划拳的机器人吧!
那么一个会划拳的机器会做什么事情呢?其实就是两件:
第一件、出拳,即:自己出几个手指?自己猜合计是多少。
第二件、知道划拳的结果,即:对方出几个手指,对方猜合计是多少,是否获胜还是平局还是其他。
只要继承Drunkard这个类,重载Come()和Outcome()方法那么你就拥有了一个会划拳的机器人,参与这个游戏了!
【游戏规则】
1、比赛共1000局,即:出现胜负算一局,如出拳100次没有结果也算一局并双方均不得分;
2、赢一局得1分、输不扣分;
3、机器人执行中每出现一次异常,扣100分、对方加1分、记一局;
4、机器人执行中反应超时1000毫秒直接判负,每超时100毫秒,扣1分,超时10次以上直接判负;
5、自己得分高于对手并大于600分判胜;
6、自己得分为正数对手得分为负数判胜;
7、其他情况则判平。
具体执行的过程,算法的过程请参考Drunkery<T1, T2>类的实现
【入门提示】
1、机器人的命名建议是:<自己的id> + <第几个> + "号",如:Zswang一号、Zswang二号,当然你也可以用“长江七号”
2、不允许修改Drunkard和Drunkery<T1, T2>;
3、机器人必须从Drunkard继承;
4、分析擂主代码是战胜擂主的关键;
5、打擂容易守擂难,大家自由发挥吧!
【擂台赛规则】
1、第一个打败擂主的机器人奖励20分,并成为新的擂主;
2、自己不能挑战自己编写的机器人;
3、最后一个擂主获得200专家分,发帖另付;
4、其余分数酌情散掉。
标准代码和比赛规则有什么不妥或者建议欢迎讨论,谢谢关注
(调试代码参考后面两帖,-_-!!!代码有点多,先别抢沙发。。。。)
------解决方案--------------------沙发。学习跟伴水学习
------解决方案--------------------LZ很厉害!!!
------解决方案--------------------立志向楼主学习
------解决方案--------------------真是开眼了!!!
------解决方案--------------------在这先标记一下
------解决方案--------------------路过拿分来了。。的确很有意思。。留个标记
------解决方案--------------------有意思~ 路过 没时间搞
------解决方案--------------------路过 mark
------解决方案--------------------LZ,很厉害,崇拜一个先
------解决方案--------------------强帖留名而已。
------解决方案--------------------如何使自己出码毫无规律,如何判断对方出码的概率
------解决方案--------------------学习了,先抢位再研究
------解决方案--------------------汗~
LZ可真闲,我整天工作写的代码就把我折腾得够呛的了!
不过帮顶了
------解决方案--------------------机器人长什么样,有图吗?
------解决方案--------------------你不是已经写好了,为何还要贴出来,再让我们去写?
不过看看也好~
------解决方案--------------------支持楼主
------解决方案--------------------顶,代码写得很清晰.
------解决方案--------------------楼主想研究人工智能么?
------解决方案--------------------哈哈,牛!
------解决方案--------------------来接分了
------解决方案--------------------