GeekGame 4th 2024 最后一个比赛日晚上,在磕了两道题无果后,我关掉了开了十几个标签页的浏览器,开始写题解。

image-20241019021150378

今年的比赛,五道口技校的大佬们也并入了进来一起卷,参赛人数较往年有了增加 ,最后的总排名为81。那么今年GeekGame的比赛是已经结束了,虽然很遗憾没有能够取得让我满意的一个结果,但是取得了让我很不满意的一个结果。

不过话说回来,今年的比赛进行的不是非常顺利,先是时不时的被拉去做一些枯燥繁琐的科研上的事,然后又遇到好几次✈️炸了持续几个小时的情况,发现自己在没有了✈️以后真就是个互联网废柴了,下次真得准备一些应急用的。希望下个月的Hackergame能更加顺利一点。

题解

下面是这次比赛成功解出的题:

总结

今年的好多道赛题让我有一种这样的体验:虽然解不出来,但在解题过程里学到了一堆东西。等赛后去拜读一下其他大佬们的题解,看看能不能让我打通逻辑上的闭环(

GeekGame的Misc分类是真顶,基于注意力机制的大模型也注意不到解法,让我很失望。尤其是“新穷铁道”这题,一阶段我就已经拿到了关键线索,但由于始终无法和出题人的脑电波对齐,愣是盯不出这个线索要如何使用,在二阶段拿到了提示以后甚至还卡了一个小时才想出解法,这题解法倒是不难,但思考过程实在是过于天马行空。

另外还有“熙熙攘攘我们的天才吧”,为了解这道题我都快把Sunshine关键部分的源码背出来了,WireShark也是用到包浆,然而最后还是没能解出来,总有细节问题想不通,只好等赛后翻看大佬们的题解以解惑。后来发现我一开始做的就没问题,从WireShark导出的裸视频流就可以直接用ffplay播放,但我过于相信Windows,它自带的播放器放不了我就觉得是我的问题,导致后面在错误的路上越走越远。。。以后音视频还得用ffmpeg套件来搞。

Web题则是一如既往的难,但说实话第二题(概率题目概率过)是真不难,是我把题想复杂了,以为得学个新语言,就一直没仔细看。

在Binary方面,说起来很离谱,这是我首次在正式比赛中成功利用栈溢出解出题目——(毕竟我真的很缺这方面的基础😢),Fast Or Clever这道题,不需要太多弯弯绕绕的技术细节,非常适合我这种Binary萌新探索。

而算法分类我是一直不太行,真是愧对于数学专业的出身。这次仅勉强解出两题,这次的随机数题题面非常简单,但遇到这种类型的随机数预测题我还是没有什么头绪,这回打算借着简单的题面认真学学;至于逆转裁判题(不经意传输)目前则是属于看了要头大的范畴了。


总体而言,体验不错,但我还是想吐槽一下第二阶段的部分提示:

“ICS笑传之查查表”的第二阶段提示:

  • 检查一下Memos的API请求
  • 看看API源码里处理Memo或者User的部分

这提示给的似乎过于不用心了,你都在解这种没有任何附件的Web题了,查看网络请求和前端源码是基操吧?还用得着提示?

“熙熙攘攘我们的天才吧”的第二阶段提示:

  • Flag 2:出题人先用 WireShark 解析并导出了 RTP 报文,然后写了大约几十行的 Python 脚本来还原完全清晰的 H264 视频流,但你不需要做得这样严谨。

这个倒是存疑,不过按我刚看到这条提示时的理解,我感觉它没有什么信息量,唯一可能成为信息的大概是最后的“但你不需要做得这样严谨”,猜测有什么很方便的操作可以绕开写脚本解码来实现。但我当时通过各种方法导出的裸流都没法播放成功(甩锅Windows),于是我后面一直认为这个流量被AES加密了,然后一直在死磕脚本。

最后发现还真是「有什么很方便的操作」(导出裸流就能直接播放),不过对于已经在写脚本的路上走了一大段的选手来说,这样的提示似乎是在说:“不需要写很严谨的解码脚本”。


最后,许愿明年能多做一两个算法题。