AlexHoring
普通大学学生一只,或许将成为一个码农。
Alex’s Secret Space

推免夏令营记录:北京航空航天大学计算机学院

推免夏令营记录:北京航空航天大学计算机学院

报名

北航的夏令营流程非常复古,全程都是走邮件通道,要整理所有信息,真是辛苦招生办的老师了。报名需要提供申请表、诚信承诺书、简历、科研计划、成绩单、成绩证明、英语成绩证明、身份证正反面复印件以及有代表性的竞赛奖项或科研成果。由于我是ACM选手,而北航又是著名的ACM友好院校,因此北航是我夏令营必报的学校。

但是,出了一个让我啼笑皆非的插曲:北航的截止时间是6月18日中午12:00,我提交报名表的时间是下午3点,因此我在当天晚上7点收到了北航报名截止的邮件……一开始我觉得肯定没戏了,但是第二天早上9点,我又收到了招生办的邮件,说中午12点到晚上24点提交的报名申请已受理……我猜是官网报名通知上写的截止时间“6月18日12:00”,没有写中午12点还是晚上12点,因此给我们开了一个复活通道。

经过审核,我成功获得了入营资格。我觉得应该是我有两个银牌和一个铜牌的原因吧。北航一共入营了接近450人,算是体量比较大的夏令营了。而且北航每年招生人数也多,往年推免生能招170人左右……这就是北京的上流学校吗……

报到与宣讲

北航不包吃不包住,在北京的一切活动自理,甚至因为没有校园卡不能去北航的食堂吃饭……还好辽宁到北京路途不算遥远,我在北航还有一个认识的好兄弟。我和另外两个ACM队的哥们在北航外面订了一间酒店,权当简单的住宿了。但是CSHWang的呼噜声实在是太响了……感谢Hui赞助的耳塞。

报到环节在学术报告厅举行,我在门口桌板上签到、领营员证后,进入学术报告厅正厅聆听了招生宣传。通过招生宣传,我才知道北航的VR实验室是国家超级重点的实验室,也是他们的王牌,但是对于传统计算机方向,我对网络和体系结构方面更加感兴趣,于是我拍下了网络实验室的联系方式,准备之后确定去北航了再联系。

逛校园环节,看到北航宿舍的空调,泪流满面。

https://blog.horing.icu/wp-content/uploads/2023/07/IMG_20230630_113204-1024x768.jpg

机考

北航的机考可以用CSP认证成绩来抵,但是有一个要求:选择的语言必须是C++……之前考CSP的时候,年轻的我为了稳妥,选择的语言是ALL(语言不限制),这就导致我提交的CSP成绩无效,必须参加上机考试。

上机考试在北航的新机房举行,机房环境和设备都非常的崭新,感觉比NEU机房好很多。打开浏览器,映入眼帘的是北航的“校训”:上网不涉密,涉密不上网【笑】。简单调试了一下环境,准备迎接考试。

https://blog.horing.icu/wp-content/uploads/2023/07/IMG_20230630_113614-1024x768.jpg

北航的机考2个小时,2道题,可以用C或C++,几乎不考算法,都是大模拟。你说得对,但是我在ACM生涯中专门负责大模拟,因此这两题对我来说还算比较简单。

第一题,首先给定不超过1000项的记录,每条记录包括手机号、区域代码(用英文A-F表示)、起始时间、终止时间。其含义是某个手机号的用户在某个时间段在某区域出现。最后给定一个手机号,要求找出所有和该手机号产生时间与空间交集的手机号,并按照产生交集时间从大到小排序输出,若有时间相等情况就按照手机号从大到小输出。这其实就是一个简单的暴力搜索加多关键字排序,对于每一条给定的手机号记录,遍历记录列表寻找和该记录产生交集的记录,用一个map存储手机号与对应的产生交集时间,遍历记录结束后将map中元素转移到一个vector中排序后输出即可。排序可以用STL sort配合lambda表达式自定义排序规则。

第二题,实现简单的脚本语言解释器,脚本语言只有3条语句:(1)def 函数名(参数列表)=算术表达式;(2)函数名(参数列表);(3)exit。对于语句(1),函数名由小写字母组成,参数列表用英文逗号隔开,参数为单个小写英文字母(甚至不是字符串),算术表达式就是正常理解的算术表达式,先乘除后加减括号优先。对于语句(2),函数名为先前定义过的函数,参数列表都是数字,也是英文逗号隔开,每条(2)语句调用都合法。对于语句(3),读取到该语句结束程序。一条语句不超过200字符,语句(1)一共不超过10条,要求对于每个语句(2)输出计算结果。例如,第一行输入“def aver(a,b)=(a+b)/2”,第二行输入“aver(3,4)”,那么就需要输出答案3.5。这就是一个普通的编译原理题,自动机词法分析,暴力语法分析(因为语法结构太简单了,甚至那些分析法都不需要)然后计算就行。对于每一个def语句,我使用一个map建立函数名和算术表达式的联系,算术表达式已经在词法分析阶段被我转化成Token串塞进vector了,每次调用执行一遍中序表达式求值然后输出就行。

考完机考,不由得庆幸,还好没拿CSP抵成绩,机考难度甚至不如CSP的T3。北航效率非常高,当天晚上就出了面试名单,我通过了机考,进入了面试关。

面试

北航面试一共20分钟,老师对时间控制的很好,我是当天那一组第10个,第一个人8:30开始面试,我在11:30准时被请进了面试办公室。面试需要准备一份报名材料的打印件,有5位老师坐在桌子对面面试我。

面试开始,首先我朗读了一遍报名材料里面的诚信承诺书。承诺书没有说不能外泄夏令营考核细节,因此我可以写出这篇文章。读完承诺书以后,老师让我从面前的信封抽一道政治题,我抽到的题目是“如何理解新时代”,我搜刮我为数不多的储备扯了一段。然后是从另一个信封抽一段英语短文,朗读一遍并翻译。老实说,这篇短文顶多高考英语水平,我很顺利就完成了。

在我完成上面阶段面试同时,我的报名材料也在面试老师之间传阅。英语考核结束,老师也大概看完了我的简历,然后就是数学考核。数学考核问了我正定矩阵的定义与判别、连续与可导的定义与区别,最后是如何用计算机求解cos1并精确到小数点后8位。可导的定义在面试时候由于紧张忘了,出门才想起来,我就和老师说“对不起,我想不起来了”,老师就换了下一个问题。

接下来就是专业课面试环节,老师问到的问题包括进程与线程的区别,C++引用与指针的区别,有引用了为什么还需要指针,单链表怎么判断有没有环,C++里public private protected的作用,快速排序原理,递归与迭代的区别以及适用场景。整体来说我觉得答的比较顺利,唯一的问题出在单链表判环那里,我的回答是经典的快慢双指针,一个一次走1步一个一次走2步,老师追问快指针一次走3步甚至更多步行不行,我思考了一下认为是行的,但是后来回到酒店和队友讨论了一下发现是不可以的,必须满足一定条件才可以,否则会死循环。总体来说,别人都说北航压力面,但是面我的老师都比较友善,面试的体验非常好。

结果

等到最后一位哥们面试结束,我们启程回学校。在一段10分钟的高铁上,我们买了商务座享受生活,躺在商务座的椅子上,突然发现优秀营员名单公布了,我们三个人全部是优秀营员,我还是名单第一位。

北航的夏令营之旅就此圆满结束。除了夏令营,我还和几个初中、高中同学聚了个餐,逛了逛北航校园。北航校园真不错,唯一的缺点是夏令营那几天北京太热了。

没有标签
首页      闲聊      推免夏令营记录:北京航空航天大学计算机学院

发表回复

textsms
account_circle
email

Alex’s Secret Space

推免夏令营记录:北京航空航天大学计算机学院
北航计算机学院夏令营简单记录
扫描二维码继续阅读
2023-07-23