https://github.com/sayuan/CodeforcesRunner
这是我自己已经使用好一段时间,
用来执行 Codeforces 题目的 sample testcase 的工具。
去年有在 Codeforces's blog 上公开,
但似乎没有太多人感兴趣,然后也一直忘记要来这里贴。
相关操作在 README 上都有写,所以我就列举一下功能和注意的事项。
1. 支援下载 sample testcase,可只下载一个题目,或整个 round。
$ cf.py -c 198 -p A # download round #198 problem A
$ cf.py -c 198 # download all problems in this round
2. 可自行加入支援的语言。
第一次执行后会产生 cf.conf,只要照着此格式就可任意加入自己想用的语言。
目前已经支援的语言有 c, c++, java, python, scala,并且各参数都尽量与
Codeforces 所使用的相同。
执行方式为 cf.py ${source code},例:
$ cf.py code.java
就会依据副档名使用设定档中的 compile & execute 运行。
3. 比较要注意的是回报的部份,共有四种结果 EXACTLY, AC, WA, RE。
1) RE: 当 return code 不为 0 时即为 RE
1) EXACTLY 指的是程式输出结果与范例 OUTPUT 完全相同 (含 whitespace)
2) AC 则是忽略 whitespace,并且允许 1e-6 的误差,
但这不见得与正式题目相符,所以结果只能作为参考用。
3) WA: 除了上述情况之外便会是 WA。
需注意答案不见得唯一,所以这也只能参考用。
我个人的使用环境是 Ubuntu,python 版本 2.7,另需安装套件 python-lxml。
Windows 下也曾经测试过可使用。
希望各位喜欢。