脱离算法竞赛很久(大概超过一年),有时候觉得自己没了当初的心气,但果然还是想继续玩,本来去年想写一篇关于我的算法竞赛生涯的文章,但由于想写的东西太多了,又觉得自己写的太烂,到现在都还没写完。

起因

与前言无关地,这次神秘地又和算法竞赛扯上了关系,主要就是上海站又要办ICPC比赛了,所以在CSL的邀请下回来帮他背锅。主要负责的是一些domjudge的延申事务,比如cds,live和presentation。由于在学校没什么事情干,赛前两周大概终于确定了自己这段时间会非常有空,所以就毫不犹豫地买票来了。

过程

后勤可能比上次办比赛好了一些,除了技术组一开始需要的桌子并不在他们的计划中之外,各种沟通还是比较流畅的。这次特别地还办了华为挑战赛,hydrooj来了一些技术人员,在初期undefined和panda帮了不少的忙。

然后说说自己负责的live部分,因为上次也跑了一点直播,所以这次自然是打算做的。赛前感觉基本上都测完了live-v3,但teamview并没有测得很好,最主要是这次直接使用浏览器渲染,原本的vlc方式并不能直接被解码了,最后在正赛前一晚才修好这个问题(利用live team那边写的webrtc-proxy把协议转成webrtc),没有再测试推流效果,直接导致第二天推流变成ppt来不及解决。

卡成ppt的原因主要就是要编码的视频流太多了,算上相机的流,再加上overlay和teamview的两个流,他需要同时编码四个流,而我们使用了软编码。另一个原因是电脑确实内存不够(只有8G),变得相当卡,导致切换镜头也变得相当坐牢。

总得来说我没拿到什么能用的设备,电流麦更是让本就拮据的直播间雪上加霜。只能说好好反省,下一次做更充足的准备吧。或者最好的解决方案还是应该请专业的直播团队,然后我们只给他们提供overlay的流就行了。

其他的一些锅

  1. 信息办的锅,搬完电脑发现由于启动卡所有电脑ip都dhcp不上去,解决方法是在/etc/rc.local覆写;
  2. 志愿者一开始并不知道要给热身赛发气球。
  3. 正赛前夜重置选手电脑的时候有几台重启比较慢,跑脚本出了一些问题导致重置出现了一些问题,具体原因我不是非常了解,最终导致有些选手的vscode插件失效;
  4. 挑战赛上很多选手还是没有线网口,最后是华为那边找人去给他们买了一些hub;
  5. 很多选手在挑战赛前一天用美团外卖购买了老款的hub,然而没有测试,导致很多技术人员下场帮他们修网,很多人在1h左右才通网,给他们先紧急打印了题面看着;
  6. 有些hub对win11没有支持,panda修驱动的时候把一个选手的无线网卡驱动搞烂了;
  7. 最后华为挑战赛的榜单由于没有专门设计导出榜单的功能,导致忙中导出了错误榜单。

总得来说管理还是有点乱,很多杂活最后是落到了技术组/集训队头上,据说下半年还要办,希望下次继续改进。(不过这次选手没什么抱怨,领导的视角来看可能能跑就行了,下次可能也不会更好)

一些花絮

  • 气球颜色在布置当晚被调换了三次,为了防止选手通过气球颜色猜出难度。
  • 我在乐乎楼住了5天,分别和4个不同的人同住。
  • 本来想看看集训队有什么人可以认识一下,结果好像几乎没有。
  • 本来非常想吃烤肉饭,结果没吃到。
  • 在回北京的高铁上发现jiangly坐在我前面两排,并且只有一个人没带队友。我立刻摆脱了社恐上去问他要了个合照,可以说见到偶像非常开心了。

结果

虽然一开始是半玩的心态来的,但感觉还是学到了不少东西。在学校的这几个月非常闲,可以说很久没有像这几天一样这么充实地干过活了,可能我可以再努力一点。

认识了hydrooj的开发人员panda和udf,两个人感觉能力都非常出色,我跟着他们也学到了不少东西,希望以后还有机会可以见面。

内容确实非常多,有些事可能忘了,如果想到了什么再来补充吧。