评测机
提交代码后得到的分数由评测机决定
评测系统
是平时上机、考试时,用来在云端判断你的代码并打分的程序,部署在提交服务器上
接收代码:系统通过接口接收用户提交的源代码文件
编译执行:编译程序代码,输入预设的测试用例
输出捕获:收集程序输出,并与预期输出进行比对
测试用例
模拟用户操作输入到程序里的测试值,通过捕获和比对预期输出,按测试用例正确率给分
测试用例最少一个,多则五六个
XDOJ的评测系统不将提交次数作为考核点
相关技巧
详细、准确的变量名
清晰、分离的程序结构
提前规划好思路再细化实现(最重要) 例如规划一道小题:
- 思路:读取输入 -> 提取数字 -> 求最大因子 -> 输出结果
- 读取输入:字符数组+循环读取单字符
- 提取数字:遍历数组,识别数字,存放到新数组
- 求最大因子:从n-1递减检查能否整除
多花时间,多练,熟悉机器交互的思维
善于总结,找固定范式,思考理解
边界测试,多想特殊情况
学会调试,找Bug很快(运气项:有的考试机器启动不了调试)
歪门邪道
- 题目样例 = 评测用例之一(适用于绝大部分题目,能保证单题20分的下限)
- 撞库,多次提交,猜出系统的测试用例(适用于用时间充足,用例极简单且较少时)
- 还是多刷题,有时候甚至会遇见原题(去年我就有原题)
辅助工具
题解合集
收集整理自23届题库,各班作业题一般是随机的,有的题目可能找不到
网页地址:oj.kites.cc