杨家齐IOI2017参赛总结2018-09-28 17:15:45阅读量:3508

 
 

首先我要感谢中国科协,感谢CCF组织本次参赛,感谢四位领队老师的带队、翻译题面工作,感谢我的教练宋新波老师多年来的指导。同时感谢主办方对本次比赛的重视和支持。

本次比赛在伊朗的首都德黑兰举行,日期为728日到84日,正好处在德黑兰最炎热的季节,月均温甚至能够达到37 °C。不过大部分时间我们都位于室内,并且不像国内的空调最低只能调到16 °C,伊朗的空调可以设置到10 °C以下,因此还是比较舒适的。

德黑兰气候干燥,因此无论我们走到哪,主办方都会给我们派水。瓶装水的温度相当,我刚到的时候发的第一瓶水里甚至有浮冰。或许是为了方便民众饮水,德黑兰的自来水是可以直接饮用的。伊朗也以米饭为主食,因此我们过去之后很快就适应了。

本次比赛的主办单位有伊朗教育部,伊朗的两所大学(Shahid Rajaee USharif UT)以及负责伊朗国内青少年奥赛的Young Scholar Club。伊朗方面调动了一部分社会资源来保障本次比赛。我们每次出行都会有警车在车队前方开道、有救护车以及急救中心的医生跟随。一些需要安检的地方,比如机场的入境安检,直接就给我们免掉了。我们下榻的酒店是Parsian Evin Hotel,这个酒店规模非常大,我感觉它更像一个度假村。里面一栋楼住领队、一栋楼住选手,还有一栋楼是比赛场所。这个酒店似乎接纳过很多中国游客,酒店里面甚至有一家中餐馆和一些用中文写的宣传语。

主办方给每个国家的队伍都分配了一个Guide,我们队的GuideErfan Khalaj,他是一位非常友好、英语非常流利的大一学生,他向我介绍了许多伊朗的习俗。伊朗是一个政教合一的国家,最高领袖在伊朗的地位非常高,街上、酒店、会议场所随处可见二位最高领袖的肖像和标语。在举办大型活动之前,民众都会唱伊朗国歌,街头很多地方都插着伊朗国旗。

主办方的日常安排非常满,基本上利用了所有空闲时间来让我们参观德黑兰的各大景点。在短短几天的日程里,我们参观了Birds Garden、天文馆、Nature BridgeMilad Tower等著名景点。天文馆里展示了伊朗所掌握的火箭技术,还让我们观看了一个有趣的载猴航天的视频。伊朗目前的火箭水平还是非常高超的,在未来应该也能够掌握载人航天的技术。Milad Tower是德黑兰地标性建筑,世界第六高塔,在塔顶上可以看到德黑兰全貌以及远处的山脉。

在第一天的比赛后我感冒了,但我还是希望参观德黑兰的景点。结果到了目的地后发现我太高估自己的身体了,于是联系了随队的医生,之后被送上了救护车输液。伊朗的输液方式与国内有很大的不同,国内一般在手腕上扎针,并且先组装好针头再扎,伊朗是在手臂上扎针,而且是先扎针再组装针头,连接药瓶。医生提供的感冒药非常淳朴:看不到药物的商品名,铝箔上直接写了药物的成分。

后两天的外出参观活动我就基本上没有参加了,待在酒店和其他代表团的选手玩了一些益智游戏,还学习了不少新的游戏的玩法。主办方借用了一个伊朗总统接见各国政要的会议场所来举行闭幕式,还邀请了伊朗副总统致词。

回到比赛本身。应该说这次比赛的题目与前几年的风格有很大的不同。(这一点甚至体现在了分数线上!)在赛前我做过2009年至2016年的题目,其中大部分年份的第一天第一题都是一道比较简单、并且选手能够在较短时间内通过的传统/交互题。而今年的IOI的第一题是一道提交答案题,后两题都是较为复杂,需要选手花费较多时间才能够解决的传统题。因此我在考场上陷入了思维定势,认为后两题中至少有一道是比较简单的,因此我应该先解决后两道题中的至少一道,再去做提交答案题。当然这个判断也和国内的提交答案题一般放在最后一题,并且一般不容易得分有关。但事实上,第一试最简单的一道题恰好是第一题——提交答案题。这个判断的失误,是我整场比赛犯的第一个错误。

我整场比赛中犯的第二个错误是,在后两道题上花费了太多时间。当我发现后两道题不太容易解决的时候,我应该迅速转变思路,果断拿到后两题的暴力分,然后去做第一题。但我并没有这样做,于是吃了大亏。

最后我第一试的分数只比铜牌线略高一点,而中国队第一试的结果大概是一金两银一铜,算是一个相当差的成绩了。在第一试之后我和毛啸同学分析了一下成绩,感觉第二试还是有得金牌的希望的,但应该说希望相当渺茫,大概要能够得到接近满分的成绩才行。而银牌可能需要大概200分。

在这个条件下,我改变了第二试策略。我先看了看所有题目的部分分,算了一下比较容易拿到的分数应该有210分。于是我决定无论如何先拿到这一部分的分数,再考虑正解的问题。当然最后我第二题的部分分没有写出来,于是只拿了191分。获得了银牌。

接下来我会叙述一些我参加本次比赛所观察到的现象,希望能够为以后的选手提供一些帮助。

本次比赛的成绩与选手是否参加过数学竞赛之间,呈现出了高相关性。所有在第一试第三题取得了满分的选手都有数学竞赛背景。我相信这其中还是有一些关联的,因此以后的选手或许可以适当朝这个方向准备IOI。(或许可以邀请一些同时具备MOOI背景的同学来出题。)

IOI的题目更加注重考察选手的思维能力,而国内OI比赛更注重选手对于常见算法的熟练程度。这也是老生常谈的话题了。尽管国内的OI比赛也在朝这个方向转变,但在这个问题上,国内的OI比赛还有很长的一段路要走。

IOI的实时反馈对选手的比赛策略有较大的影响。对于一些需要较为复杂的分类讨论的题目,选手可以利用实时反馈,把特殊情况一个个试出来。这种比赛策略在国内OI赛制是几乎不可能实现的。当然实时反馈对承办单位提出了更高的要求,比如说要能够租到性能相当优异的服务器才行,但我仍然希望国内的OI赛制能够逐渐朝这个方向转变。并且由于有实时反馈,IOI的题目的样例数据通常都非常弱,甚至可以说是没有。这一点就不如国内的OI比赛了,当然这就更加需要选手能够自己设置测试数据来进行调试。

IOI的题目的部分分做法可能就是正解的一部分。这种设置部分分的方法与国内某些把部分分设置得较为花哨的方法相比,有利也有弊。但如果选手将要参加的是IOI的话,那么最好能够尽早知道这一点,可以少绕一些弯路。


在这种大型比赛中,策略可能比实力更重要。在Codeforces上等级分排名前5IOI选手,最后取得了一金三银一铜的成绩。在大部分选手眼中Codeforces的等级分是一个相当重要的评价选手实力的指标。但如果比赛策略不当,那么实力再强,也很难取得理想的成绩。