现场赛经验 by CQU ACM/ICPC

来源:互联网 发布:蓝牙音响 知乎 编辑:程序博客网 时间:2024/05/17 02:41

ACM-ICPC现场赛参赛经验 ver1.0

                                          -- CQU-JKi Wang 2013.5

正确的开局:

三人分读题目,切记每开始阅读一个新的题目时一定告诉队友,作上标记,以防重复阅
读,浪费资源;开局并非需要一个队员负责调整 IDE,打开 PC^2,写好头文件甚至一些常用模板。(队员α:我英语考试从未及格过… 队员β:去吧,该干嘛干嘛去… 但是切记打开 BOARD,并且定期刷新,随时准备跟风。

The First Blood of the team

||———-STATE 1-有队伍过了 X 题: 将被过掉的题目(通常很快就被 AC 的题目为水题,
| 但也有意外情况)交由团队中发挥最为稳定的选手阅读并尝试 Coding。若遇此题已
| 被阅读的情况,已读题目的选手深入尝试得出解题算法,如果有 1Y 自信便直接开
| 始 Coding,比赛中比较忌讳题意转述
||———-STATE 2-这道水题我能做: |———-稳过的题目(主体算法清晰,细节明确,有
| | 1Y 把握),那还不开写等什么呢!!?
| |———-可尝试题目(主体算法清晰,细节待定),基
| | 于没有其他队友使用键盘的情况下进行上机编码,
| | 若其间有队友提出自己有了稳过的题目,立即打印
| | 未完成的代码,让出键盘,在边上进行纸上编码。
| |———-朦胧的题目(有些许灵感,主体算法不清晰),
| | 这样叫做能做?呵呵,继续想,至少保证主体算法
| | 思路明确…
||———-STATE 3-这个题目类型应该是 XX, 我并不擅长, 应该让队友α来做: 告知队友
| 该题目编号和你预先判定的算法方向,仍然忌讳题意转述

After Coding:

排除所有 compile error 和任何可以的 warning(尽可能排除 gets()函数警报等不能规避的
warning 以外的所有 warning)。以文件方式写抄好 Sample Input,进行测试。
{g++ -Wall proX.cpp -o proX.o
vim proX.in //接着抄写 Sample
./proX.o

Judging Result && Debug:

注意,评测结果返回可能会非常缓慢,其间切勿等待,继续尝试其他题目
返回结果:
Yes——该干嘛干嘛去
No——–|—–Runtime Error 优先检查代码数组边界是否足够大,是否有除 0 或者
| 负数开根等违例操作
|—–Time Limit Exceeded 优先检查是否存在死循环
|—–Wrong Answer 1.重读题意(有必要时,让队友重新读题后交流验
证题意2.算法严谨性检查(有必要时,与队友进行讨论
3.代码严格检查,以下罗列部分常见错误
a) 输入输出格式错误
b) 数据类型错误(运行中数据超界)
c) 数组变量范围过小(也会导致 WA,不一定
就是 RE)
d) 变量名输入错误,语句遗漏(如变量初始
化)若反复检查仍然没有发现 Bug,可与队友交流,向队友详细讲解算法代码以察觉潜在
Bug若检查后发现 Bug:在纸上立即修复,完成后再次严格检查代码,特别留意是否存在与
该 Bug 类似或相关的其他 Bug 存在,保证代码正确性后再向正在使用键盘的队友申请试用
键盘,修改源码后再度进入 After Coding 阶段。

比赛后期(12:00-14:00):

这个时间段是新手队伍的疲软期,也是强队开始爆发拉开差距的时候
关于午餐:主办方发的午餐尽量不吃,以节约时间;容易空腹感过重的队员我推荐: 士
力架,你值得拥有
在这个时候所有队员应该根据场上形势判定过题目标定位,根据自己的实力和每个题目
的进度以及通过情况决定是否采取全员集火策略
最后 1h 封榜后事过题高峰期,注意留意场上气球变化,留意是否有某种颜色的气球在
场上爆增的情况
控制心态,绝不言弃,就算最后几分钟想出一个题目的算法,也有可能爆发编码将其过
掉冲刺阶段(最后 15min),当时的 Coder 可以根据自己的个人习惯要求队友离场以降低
心理压力,可以使用题目密封信封遮盖电脑上的时间显示方便全力冲刺

Tips:

其他队友有题能写,如果当前 Coder 占着键盘发呆超过 3 分钟请理解滚下键盘,说明他
根本没有想好那个题目。(离开键盘同事记得打印代码)
没事做的队员不要盯着队友编码,尽量不去注意他,不要过于频繁的追问编码进度;这
些行为都会导致 Coder 的 Psycho-Pass 迅速上升;那样的话也许你就再也没有机会感谢大学
同学的不杀之恩了(当然这个根据选手习惯,例如有些队员需要队友帮忙监督是否有编码错
误同时这样做并不会感受到额外的压力)
如果遇到卡水题(全场通过队伍数高于 60%的题目,当然这个是根据你的队伍的强度
来决定的)超过 1h 的情况,可以尝试请求队伍重炼(不要沿用任何你的代码)
非 Coding 状态队员注意定期(15-20 分钟为佳)提醒使用电脑的队员刷新 Board 以察觉潜
在的高通过率的题目
对于编码越没信心,请纸上编码越详细
没有思路或者头晕的时候可以尝试去洗手间洗脸以及在赛场上站立一会儿
参赛前一天可以尝试睡足 10 小时,但是请放弃前一天的午休,以夜间难以入睡
减少代码复制粘贴,尽量携程函数方便修改
可以紧张,但若发现自己或队友出现紧张情况,可以提示其深呼吸以缓解
时空效率危险且代码量大的程序完成优先度较低
没有神级计算几何选手的队伍,计算几何类型题目(非水计算几何题)完成优先级较低
* 比赛周忌讳学习新的算法
* 比赛周忌讳连续数日的高强度训练
* 比赛周推荐阅览 M67 等博客,翻阅小学奥数题目以保持思维活跃打开思路

原创粉丝点击