「2022.10 日记」是非常忙碌的一个月!

本文最后更新于:2023-03-01 19:15:09 UTC+08:00

9/30 Fri. 把每日一题的 bot 粗糙地写了一下,草草上线了,后面修修补补修了一些 bug,但总体而言使用起来问题不大。

写完了 bot,晚上去打了 maimai,还去吃了饭,日式料理,感觉很不错。

晚上回来冰岩的七天实习期已经开始了,开始选题,有四个题目可以选,git,登陆系统,DNS,bot。一开始想选登陆系统,但后来学姐说有几个人也选了登陆系统,遂改选为 DNS。

10/1 Sat. - 10/8 Sat. 冰岩实习

于是,七天的实习期就开始了。

冰岩实习:DNS 客户端服务端 Cyber Lighthouse:https://github.com/ligen131/CyberLighthouse

项目细节就不在这里展开了,可以直接在 README 里的 Project Logs 看到。

总得来说收获还是挺大的,至少理解了 DNS 的作用和重要性,实践一下还是印象比较深刻。

这中间也出去玩了两天。

10/2 Sun. HUSTACM 国庆秋游

ACM 团队第一次团建!早上去东湖骑单车,虽然迟到了,不过后来反向绕圈在中间遇到他们,于是一起上路,在桥上合了影。

回来时路遇东九。

说起校庆,国庆假期(虽然只放了三天)听说校庆晚会每天排练到半夜,结果校庆当天(10/6)说疫情原因推迟了晚会,后来一推再推,把舞台直接拆掉了,到现在也还没办。

中午吃长桌大餐(虽然说吃不太饱)。

下午国奖学长请大家玩了剧本杀!个人感觉我们的六人本还是很好玩的,主要是 PM 一直带着我们往对的方向走,一直在给提示,最后甚至能自己把自己的三个身份全都推了出来,还是很有成就感的。

晚上队长懵哥带大家吃俄罗斯大餐,虽说很贵,但是东西都很高大上。

10/3 Mon.

一觉睡到下午,然后就是宿舍国庆聚餐!大家一起去吃了附近的汉江山烤肉。不过体验没有上次华为实习结束后大家一起喝酒吃肉来得爽快,不过也感觉很好!

10/8 Sat.

冰岩实习整了整整一周,作业啥的完全没动,最后做了 ppt,还是顺利完成了验收。验收完跟大家一起吃了个饭,十几个人挤一张小桌子,不过大家都互相不是很认识。

10/9 Sun.

隔天去了组面,组长面试时一脸严肃,问我 ACM 之类的会不会占用太多时间。在面试的时候信誓旦旦跟他说尽量跟进这边的任务,不过后来还是各种事情耽误了一些。。

下午 vp,vp 结束去吃了汉堡王,还没吃完就赶去第一次团队大会。说实话大会挺无聊的,等到大会结束进行封培(至今不知道什么意思,说是讲各个组的一些基本情况),介绍了一些注意事项和要求,然后就散会了。

说实话进冰岩之后还是跟我想象的有些差距,毕竟进了团队还是会有人 push 你做东西,不再和之前一样自由自在,可以慢慢磨项目,磨细节。

10/10 Mon. - 10/15 Fri.

然后似乎度过了比较悠闲的一周。14, 15 号两天还去打 maimai。因为周末要去华为参加比赛,所以把 vp 调在了周四,vp 完 lmh 提议去吃烤肉,然后顺手打了几把 mai。

10/16 Sat.

早上体育课,扎担架,身体素质练习。

每周的周六都严重缺乏睡眠。

下午武大新生赛,非常困,也没怎么认真打,签到也没完全签完,就跑去死磕一道题,最后也没磕出来。赛后听说是 SG,看起来要补补这块内容了,下周就是区域赛了。

打完还要马不停蹄跑去 ACM 队上课,讲的基础数据结构 ,在场的都听得很认真,不过听不听得懂就是另一回事了。

终于把这天的任务全部完成,隔天还要跑去华为武研所参加比赛。

10/17 Sun. - 10/19 Tue. 华为算法大赛

本来周日有冰岩组会,第一次组会就翘了,是不是不太好。但也是万不得已,本来能在周六开的组会。

早上打车去华为指定的酒店入住,酒店的环境很好,早饭也很丰富。

早饭过后坐车到武研所。又见面了,这一年注定和华为有着千丝万缕的联系。

到比赛场地,但是非常的困,看了任务书,看了队友代码(感觉有点丑,也基本没怎么写),想了一会趴桌子上睡着了。直到午饭才和队友一起去吃。这次比赛华科过来的都不是很重视,队友也不是 ACM 的队友,两个人都有点随意,所以题也没认真写。午饭回来干脆新开一个仓库自己写,把主要模块写完,但是发现交上去优化后的结果比按顺序读入的结果要差很多。

晚上两个队友都说要回去,隔天有习概早八的课堂练习,于是只留我一个人在酒店。那天晚上写道两三点,似乎效果还是不太好。

决赛当天可以到决赛场地自己提交评测,于是交了很多发发现按照数据给定顺序直接处理其实是最优的。于是也不管其他的优化了,就一直在顺序读入的这方面继续优化。

最终决赛采用了削平花费的方案,直到最后一个小时才把最终有成效能用的写出来,于是最后就一直提交调参数,最后成绩是五千万,还算可以。

主要是两天队友都有些摆烂,让我感到有点不爽。最后他们还是提供了一些建议,也多多少少对最后的结果有一定贡献。

决赛过后是茶歇,有很多甜点,看起来非常高大上。

茶歇的时候跟华为竞赛部的人聊了很多,聊到新生赛的赞助,以后赞助的事务,还聊到了实习,一并认识了武大删点引猹队,认识了侯队长,中午吃饭的时候其实已经跟他们聊了很多了。收获了一些合照,一些微信,一些 QQ。

决赛颁奖。最终还是拿了高校组第五,还算可以,虽然没有前面论文算法跑得好就是了。

颁奖结束后我还在酒店多待了一晚上,隔天再回校。

10/18 Tue. - 10/21 Fri.

回校后一直在筹备新生赛的事情,滚榜这个老大难问题还没解决,ICPC resolver 并不容易用,导入 dom judge demo 的数据一直无法滚榜。于是直接本地搭了个 dom judge 试了一下居然可以导入数据,于是决定要不校内直接用 dom judge,既可以解决发气球问题,数据也可以直接导入然后滚榜。此时经万能的舍友点拨,也解决了内网访问 80 端口的问题,不过 dom judge 要搭在 Linux 虚拟机,于是给虚拟机加了一层 TCP 转发。中间还出现了非常多的问题,都是一个一个慢慢解决。

这几天每天晚上都是四五点才睡觉,作业没动,其他事一切都没管,加了层层保险,压测,加评测机,转发请求,验证题目,安排座位,气球,账号密码,一切的一切仿佛永远做不完,后来还因为机房原因,考前一晚上暴力 SQL 进行修改账号名。

周四还因为 MySQL 误操作把虚拟机磁盘直接爆满,把物理机的 D 盘也爆满了,而那天晚上还要补作业,搞得非常崩溃,直接在群里骂娘。本来一切都好好的,看似全都搞定了,还来给我整这出。幸好还是不难修,把虚拟机磁盘 repair 之后顺利恢复了。(dom judge 搭在自己的电脑,通过校园网内网访问 80 端口,虽然不太合规,但小规模使用还是可以的)

赛前一晚还跑去打 maimai,打完回来拿舍友的树莓派转发了一部分流量,避免两百多人同时访问,流量太大撑不住。最后其实不转发也没多大问题。

10/22 Sat.

新生赛当天早上仍然是体育课,这次是心肺复苏和野炊。

10/22 Sat. HUST Freshman Cup 2022!

体育课结束比赛已经快开始了,还有好多人找不到自己的座位,当时非常着急,后来才发现是问卷星发放数据的时候忘记写考场了。

12:28 的时候 116 还有一些人无法连接校园网,外网也还没断掉,索性延迟 10 分钟开考。

【新生赛后面专门写一篇复盘】

【电脑要没电了,push 保存先,后面有时间补】

// 11/2 前来补上

可能是我之前没听清楚,延完了懵哥才说 116 的网络已经没问题了🤔。但延了就是延了。于是继续去处理外网的问题,事先跟机房老师说好了,但是不知道是要提前去设置防火墙,所以耽误了一些时间。

12:40 校内赛正式开始。此时外网问题仍然没有解决,在这十分钟内一部分人直接打开了牛客同步赛看题,可能对公平性产生了一点影响。

刚开考的时候会有一段流量高峰,大家都在下载题目,大部分人反映下载很快,几秒就搞定,但是也有人下载了近 20 分钟还没下载下来(说是一直下载失败),一直用的牛客看题。解决方案:先发题目加密压缩包,题目不上传服务器,开考的时候直接发压缩包密码。

从到南一楼开始就在寻找机房值班的老师,打电话给机房负责的老师,说是值班老师必须会在工位。但是在工位找不到他,也找不到他电话。于是兜兜转转打了好几个电话,直到临近开考才找到一个年岁较大的值班老师,他让我带着笔电,然后开着微信别人发的文档,一步步让我操作。这个老师似乎不是很懂防火墙这块,一开始还开错了文档,最后还是现场打电话给了欧阳老师,电话里欧阳老师一步步教我操作,才把 808 的外网问题搞定。接下来就是去 116,和 808 是基本一样的操作,操作起来快多了。此时终于把外网问题搞定,距离新生赛开始已经将近一个小时(13:32)。教训:需要提前至少一个小时到达现场,把网络问题搞定。116 校园网问题需要在一开始就让选手注意。

翻了翻聊天记录,临近比赛才有人说不知道需要加群报名,教训:需要在比赛海报上明确写上如何报名,和加群提示信息。群内重要信息一律 @全体成员 + 公告,精华消息很多人不会看。

座位数据、考场机房位置等等,需要提前一两天向选手公布,所以机房必须提前一周搞定,并确保可以使用

把外网搞定,接下来就是不断的吹气球,发气球,由于有些人换过座位,而且问卷星没有写考场,导致有些人在 116 和 808 互换了,所以一开始有一些人找不到,还有一些人发错,发多了,对某些人来看气球其实体验并不是很好,加上大家发气球的时候会发出一些声响,可能会影响大家做题。教训:需要统计机房可以坐的座位,并且座位号和问卷星给的座位号严格对应,如果遇到换座位,需要一一记录下来并手动修改 Dom Judge 团队名称。

发气球发得差不多,时间来到四点,突然有人报网页打不开了,于是火速跑去 504 修锅,发现是 D 盘直接爆满了,就和前几天出现的一样,虚拟机直接崩溃,于是火速卸了几个比较大的游戏,和 zx 借了块固态硬盘,火速拷了点东西,火速开虚拟机,恢复网页,开评测机,恢复评测,总宕机时间大概五六分钟。事后才想到,有可能是评测机会把选手的所有输出全部存到数据库中,导致数据库增长飞快,直接把虚拟机硬盘撑爆,所以导致了崩溃。赛后统计了一下,数据库总共增大了大概 50GB。之前一直在对其他问题进行优化,网络带宽,压测评测机等等,但万万没有想到这个问题。教训:需要预估人数、预留足够的磁盘空间。

这以后我就一直待在 504,模拟后面的滚榜,发现是可以手动控制滚榜的,还给滚榜调了一个算过得去的字体(华文楷体),避免了中文显示不出来的问题。

其实比赛期间出题组对大家过题还很有期待,但是毕竟我没怎么参与出题,也没仔细看题目,所以基本没有参与讨论。想起来在搭 Dom Judge 的时候,教程里提到“技术组”,才意识到其他学校办校赛是出题和技术有做分离的。或许以后也可以这么干,不过这次也可以算是分离了。

另外赛时有人反映 Dom Judge 交不上去,后来发现是文件名问题,可能路径不能包含中文和空格。

说了这么多,放一些图片吧!

赛前宣传海报!By GC

赛前气球筹备:

赛前 GC 还给大家祈福!

Dom Judge 界面一览:

本次比赛总共处理了 1814 个有效提交,没有收到卡评测报告。

手机端:

滚榜:

考场照片:

808 机房:

116 机房:

特写:

一些气球 && 赛后被丢弃的气球

冠军特写:

赛时吹气球 && 发气球:

赛时答疑:

赞助商片段——华为光产品线

校外牛客同步赛

赛后组织了讲题和滚榜。

当天搞定了之后,几个人去吃了烤肉,庆祝圆满举行新生赛。

10/23 Sun.

第二天大概三十个人去了华为武研所参观 + 颁奖。吃了茶点,合了影。


「2022.10 日记」是非常忙碌的一个月!
https://ligen.life/2022/diary-2022-10/
作者
ligen131
发布于
2022年10月29日
更新于
2023年3月1日
许可协议