AC. 梦想

frank_c1

TopCoder.准备工作

发布于2015年11月30日 | 暂无评论 | 1,807阅读 | 比赛经历

所谓“工欲善其事,必先利其器”。要想打TC,还必须得把准备工作做好。话说TC比CF复杂多了,如果说CF还有点正常OJ的样子,那TC真是颠覆了我的认知。作为一个小白,借鉴了网上诸多教程后,自己来整理一下。
 
1.需要准备的软件

Java Runtime Environment(JRE) 配置Java环境;

Competition Arena TC的竞技场,比赛就在上面做;

CodeProcessor  TZTester  FileEdit 三个很有用的插件,TC官网可以下载。

上述的软件和插件我都放在BaiduYun上,以供参考。
 
2.安装具体流程

1)安装JRE(当然也可以是JDK),配置本机的Java环境;

2)安装完毕后,运行ContestAppletProd.jnlp,会出现登陆界面;

3)在登录界面输入用户名、密码,回车登录,进入主界面;

4)选择Options->Editor(黄色选框),会弹出Editor Preferences窗口;

5)单击Add,配置插件,Name填CodeProcessor(其实无所谓),EntryPoint填codeprocessor.EntryPoint,ClassPath用Browse或输入的方式把三个插件的路径都填上,用';'隔开,可以使用绝对路径或相对路径(同一文件夹下)。

6)单击保存后,看到窗口中除Standard外多了刚刚添加的一项。选中,单击Configure,Editor EntryPoint填fileedit.EntryPoint,Processor Class填tangentz.TZTester;

7)填完以后,看旁边两个按钮,点Verify可以验证输入的合法性,接着点Configure,又弹出一个窗口,在General选项卡中勾选Write the problem description using HTML,并把下面后缀名改成html,这样题目的描述就可以像网页一样查看,而不必一直看着那小窗口;然后切换到Code Template选项卡,将自己的模板贴到里面,到时候插件会自动生成代码模板并插入题目的测试样例,而不用自己一个个去扒下来。代码仓库里存有一份比较好的模板可供参考。

8)将所有的设置保存,再去主界面Options->Set User Preferences中设置语言,就可以去做题目练练手啦!
 
3.练习和比赛

1)练习

主界面中点击Practice Rooms,选择一场比赛进入,Loading过后就进入到room里面。聊天功能什么的不多说,就说怎么做题目。界面中部有一个下拉选框Select One,以SRM为例,展开后会出现三个选项250,500,1000,分别代表难度依次增大的三道题目。选择一道题目进入,会弹出一个窗口。将Choose your editor选框中Standard切换为CodeProcessor(插件名称)。完成上述工作后,打开软件所在的文件夹,可以看到出现两个新的文件,一个以html结尾,是网页格式的题目描述;一个以cpp等结尾,是生成的代码模板。打开代码,直接在题目要求的接口函数中打自己的代码即可。编辑完成后,回到Arena题目界面,点Compile编译,点Test测试单个样例,点Batch Test测试所有样例,点Submit提交,显示的分数是根据提交时间距打开题目的时间计算的,不是最终成绩,另外注意除第一次外每次提交都会有扣分。如果是练习,可以回到room点Practice Options->Run System Test,可以测试所有题目(最终数据),绿色通过,红色不通过。做完题目点Lobbies->Admin Lobby Room返回主界面。

2)比赛

主界面点击Active Contests,先注册,在比赛开始后Enter进入,做题过程与上述相同。SRM的Coding Phase有75分钟,intermission5分钟,然后是15分钟的Challenge Phase,这时就尽情cha别人代码吧。cha成功得50分,被cha掉的代码0分;cha失败倒扣25分。接着是System Test,时间比较长,完成后就可以查看结果了。