记一次准备龙舟杯比赛的经历

首先恭喜第三届烟台大学龙舟杯比赛顺利举行啦~

起因大概是千千在小组答辩完的时候咯,周老师来到实验室让我准备准备本次的龙舟杯比赛,需要分为计算机类以及非计算机类两场,以及有着题目难度低、区分度好的要求。

嗯~ 鑫学长以前说过他也想参与今年的龙舟杯出题,于是我们两个人每人负责一套题,千千负责计算机类,鑫学长负责非计算机类。

因为我校使用 hustoj,所以最后的比赛也是会在它上面举行咯~ 如果出题一开始就在 hustoj 中测试一切都会变得很方便,但感觉不是很好用呀,怎么办呢 QAQ?polygon 中出题也很好啦,checker、validator 都很齐全,当然缺点呢就是比较麻烦。

而 6.1 – 6.6 这段期间千千还有一个大组答辩需要准备,所以开始的几天就没有想过出题啦~

鑫学长的效率真的很高,没过多久题目就已经弄好啦,然后发给了千千。(当然最后题面标程也出了几次锅,还好在比赛前测试时候的时候发现了)

唔,怎么这份题面画风这么诡异呢?

不管了,先加在本地虚拟机里的 hustoj 再说。


在准备大组答辩的期间千千也用了一两天的时间构思题目原型,当然啦~ 简单题里也便有着各种原题的存在。

前前后后一共准备了 14 道题目,其中一道签到题、六道简单题、五道中等题、两道难题。

最终的决定便是挑选了一道签到题、五道简单题、三道中等题以及一道难题咯,一共十道题。

准备期间当然也想过要不要出一道题目卡 OI 学弟啦,而这道题目的数据构造非常容易,但真正写起来非常麻烦呢 QAQ,是一道大模拟没错了。还是放弃了,因为比赛只有两个小时,而且题目数量这么多,再出这样一道题做出来不现实,并且也没有人想要去补这种题。

题目原型准备好啦~ polygon 中也都准备好了 checker、validator 以及所需的测试数据,那就接着准备大组答辩吧!到那个时候只有最后的一天可以准备啦 QAQ。

匆匆忙忙的修改论文、修改幻灯片,练习答辩,晚上回到宿舍也和舍友一起练习了一两次,帮舍友也看了看论文中的错误(千千和一个舍友都要参加大组答辩咯)。

第二天早起,去楼下售卖机买了两包饼干便去了答辩现场,六楼爬上去真的好累的说 QAQ。

抽签 21 号,位于倒数第一(压轴?),唔,目测是下午了。于是那个早晨便看着别人的答辩,中午的时候周老师也为千千提了一些答辩过程中的建议,以及幻灯片里可以做的改进。

下午正式开始啦~ 与『友人 · A』的发挥都挺好呢~ 答辩结束等待老师提问问题的那段时间真的很开心呢~ 结束啦~ 圆满的要结束啦~

最后,不出所料我们都拿到了校优的成绩呐,千千是全院第一哦~


答辩结束以后的最后一件事便是龙舟杯啦~ 之后的几天,一直处于编写题面的状态。也感谢 Koning 提供的 H 题(我们是冠军)原型 + 题面,Rainb0ws 提供的 A 题(这是最简单的一道题)题面、D 题(小 Y 的徽章)原型 + 题面,以及 zudikn 最后的测题。

临近比赛的前一天,千千将出好的题目从 polygon 转移到了本地 hustoj 中进行测试,不料 hustoj 与 polygon SPJ 处理逻辑有些许不同,导致 D 题(小 Y 的徽章)一直无法保证精度控制在 $10^{-6}$ 以内 QAQ,当然这也与 double 的有效数字位数有关,临时更改题面,将精度控制在 $10^{-4}$ 以内,测试发现 $\pi=3.1415926$ 依然无法通过题目,于是将 acos(-1) 的用法以及 $\pi=3.141592653589793$ 也都提示在了题面,也希望大家可以通过这道题。

那天晚上,千千也祈祷过大家平均五道题就好的呢~


比赛当天的早晨便是最后的测试咯~

控制好 OJ 各个权限账号,修改了 administrator 的密码,最后上传题目以及数据。

唔~ OJ 上的 bug 还是很多的,不过理论上不影响本次的比赛。

眼看距离比赛的时间越来越近了,每一个负责人都在努力做着自己的工作,千千也去迎接了隔壁工商的队伍,无奈错过了一点儿 QAQ,第一次面基到了 boxjan。

咦,快要比赛了,我怎么登不上自己的账号了???考试模式开启了?限制 IP 了?

哇!一切都在快要比赛的时候炸开了,好多人无法登录账号,千千没有维护过 OJ 呢,所以不懂考试模式是什么样的逻辑 QAQ,于是,又有了一批人专门处理这个问题。大概十五分钟后一切都安定了,大家也都进入了做题的状态。

一切都看似很成功,非计算机类的大家做题速度好快,而计算机类前面那些同学的做题速度也与预期一致,就这样~

中途 boxjan 告诉了我判题挤压的问题,此时大概挤压一页多一点,原因便是 hustoj 为每一道题所有的数据点都执行了评判,而等到评判结束才返回最终的结果(千千记得以前是只要一组错误便直接返回结果的说),联系了 OJ 实验室的各位,然而大家都没有提出好的解决方案,千千也没有研究过 hustoj 呐。唔,每一道题目的数据有一百多组,如果一份超时的代码提交会被评判一百多秒,而评判只有四个进程,这样下去挤压会越来越严重的呢。

大概中场的时候,挤压已经到达了六页,还好有 boxjan 在,为我们解决了这一问题,boxjan tql!我好菜呀!

中场的时候,学弟差不多已经 AK 了,而第二名大概五题左右的样子,可是后面你们那么一批爆零的是怎么肥四呀 QAQ,第一题真的已经提示的非常明显了呢。

直到比赛结束时依然这样,第二名 7 题,榜单前面的一半看起来还行,可是后面一堆 2 题、1 题、还有 0 题???

唔,隔壁非计算机的榜单看起来还是挺好的,预定一共八题,rk1 做出 7 题。


如何评价烟台大学第三届龙舟杯计算机类的比赛呢?

不知道可不可以用『惨』来形容。

参赛人数 161,两题以及两题以下 99 人。

整体的说呢,我校平均 2 题,隔壁工商平均 5 题,被血虐(虽然 rk1 是属于我们的)。

唔~ 各位学弟学妹们要好好努力呀~

记得好好补题呀~ 千千真的有用心准备的题目呢~

只是,没想到的是最终这样的结果而已啦~

不讲啦~ QAQ


明年出题记得再简单简单呀!

唔,zudikn 看过非计算机的题目时讲『你们拿这种一分钟一道题的难度去侮辱非计算机类的学生?』,看看榜单,还行~

所以呀,一定要站在实际做题人能力的角度上出题,而不是参照身边的同学或了解到的人或自己那时候的水平再衡量最终的结果咯~

都要加油呐~


小声说:千千是不是该庆幸 C 题的数据有一点点的不完备呢?否则榜单可能会更惨~ QAQ

就这样呐~


  • 26 只已被捕捉
    • VPS234 Chrome | 76.0.3809.132 Windows 10

      博主还在上学吗?哈哈OωO,好怀念当初参加比赛的日子啊

      • 千千 Chrome | 76.0.3809.132 Windows 10

        是的呀,还有两年多毕业~

    • ⑨BIE Chrome | 76.0.3809.100 Windows 10

      只看前面咱还以为是划龙舟呢(

      • 千千 Chrome | 76.0.3809.100 Windows 10

        哈哈,因为是端午节所以起了这样的名字

    • 今日头条新闻 Chrome | 63.0.3239.132 Windows 7

      文章不错支持一下吧

      • 千千 Chrome | 76.0.3809.87 Windows 10

        感谢支持~