下载 App

关于成绩如何计算的一点小建议

2018/02/26710 浏览综合
首先向开发者表示感谢,这个游戏挺有趣,为了通关还真是要费些心思。
强迫循环执行,不完整的逻辑支持(不支持else分支,不支持false判断)都增加了难度。最初习惯于按照以往经验来写程序,经常掉到坑里。
对于每一关的成绩如何计算,我个人有个小建议供开发者参考。可提供两种计算方法——
方法1、基于“完美的程序永远不会失败”原则的“完美得分计算”:
1.1、显然,有的程序策略不见得是100%成功的,所以提交的程序需要被运行n次(简单起见n可取100),如果有任何一次程序运行失败(超时,核心被摧毁...),则此程序得0分;
1.2、如果n次全都成功,则每一次的运行结果按照以下优先级顺序计算得分:运行时长>残血>代码行数。或许与开发者想表达的初衷不同,我个人比较倾向于将代码行数放在最后进行考量——两段代码,前者50行执行10秒钟达成,后者10行执行50秒钟达成,谁更优秀一些?我倾向于前者。虽然残血只能算是附加成就,但即便如此我也觉得比代码行数来得重要;
1.3、分数如何计算。建议回收足够多的用户代码样本并真实模拟后再进行归一化计算。可考虑给样本中单项成就最好者满分1分定锚,余者折算成百分比。各单项按权重累加。n次的结果应去掉前后各5%最优最差样本计算平均值;
方法2、相对宽容一点的计算方法,即便不是100%成功,也可以获得相应分数:
把上面的1.1改成运行n次,失败的单次得0分甚至给一定的惩罚扣分,运行成功的实例仍有得分。其余不变。
BTW,按方法1的话,我有几关也得不到分数了。囧
【关卡更新!】异常的2021年,玩家关卡又更新了!截图
【关卡更新!】异常的2021年,玩家关卡又更新了!
自从2017年8月异常首个测试版跟大家见面以来,已经过了将近四个年头了。当初还是学生的玩家大佬们,现在有很多已经参加工作了吧。时间过得真快! 当异常的版本进入一个相对稳定的阶段后,本咕就开了新坑,开始了新的咕咕生活。但玩家大佬们时不时的贡献一些关卡,居然让异常还能保持一些活力。本以为早就会凉凉的异常,在2021年还是会偶尔触动某些玩家大佬们的灵感,从而诞生一些让人赞叹的创意关卡。 为了让这些宝藏不
官方
314 赞
80 回复
第十一关特异过关法截图
第十一关特异过关法
其实是把下面那哥们当盾使了 由于两个士兵走路速度有差别,调试了好久,才弄出这个不需要算距离的接法 p1中运动路径是ACECECEG p2中运动路径是BDFH #异常
4 赞
1 回复
01:26
异常:最好的编程入门书截图
异常:最好的编程入门书
好 难 啊 真的打不过 我不是计算机相关专业的,之前因为有需要自学了一点c和lua,但说实话还得是那种认真学了计算机,对算法和流程控制有点了解的玩起来能更轻松点。 游戏链接:https://www.taptap.com/app/59622
25 赞
3 回复
第12关和第14关极简步骤随机解法截图
第12关和第14关极简步骤随机解法
优雅永不过时!
2 赞
3 回复
02:10
【买到就是赚到的游戏推荐】:这游戏太烧脑了吧,打完我快异常了截图
【买到就是赚到的游戏推荐】:这游戏太烧脑了吧,打完我快异常了
好难啊!!!我已经大脑过载了! 商店页面:https://www.taptap.com/app/59622
22 赞
1 回复
存活检测新方法,简单易懂截图
存活检测新方法,简单易懂
该方法不用考虑士兵顺序编号,只用4个信号,最终31行。 原理:一个单位开信号1,另一个单位关信号1,那么这两个单位可以互相检测对方是否存活(注意其他单位不要开关信号1)。 例如下图,士兵1检测到信号1开,说明士兵2阵亡;检测到信号1关,则说明士兵2存活。 士兵1检测其他4个士兵,需要信号1, 2, 3, 4。如果士兵1阵亡、士兵2存活,则士兵2检测到信号1关可说明士兵1阵亡,此时信号2, 3, 4
精华
3 赞
2 回复