关于自定义计分脚本
查看原帖
关于自定义计分脚本
356740
封禁用户楼主2020/8/6 19:13

RT,首先,褒扬一下这个自定义计分脚本的功能(bushi

其次是反馈内容。

  1. 这个脚本跟 Bash Shell 的很多命令相似(比如if指令),可是 Bash Shell 是包含for迭代指令的,而本脚本不包含。这使得有时要判断大量测试点/Subtask的属性时非常费劲

    eg. 如果一个Subtask有10个测试点,我想判断如果全部WA就整个Sub给1分,那就应该这么写:

    if @status1 == AC and ... and @status10 == AC; then
    	@total_score = 1;
      ...
    fi
    

    如果有20个测试点就更多了,这是非常不方便的。

    解决方案:

    1. 给出所有下辖测试点/Subtask的统一变量,如@all_status,将常量表定义为
    • AC --全AC

    • WA --全WA

    • PC --部分AC

      这样方便判断

    1. 加入循环语句或range语句以快速判断
  2. 该脚本中最终的4个常量都需要定义,否则会UKE。这在测试点很多时会带来麻烦,比如说@final_time需要把所有测试点时间加起来,这会十分冗长。

    解决方案:为这些变量设置默认值。

望管理大大采纳 不要让我写代码

2020/8/6 19:13
加载中...