当时夏令营结束就想着要记录一下,到现在快半年了才真正行动,拖延症真的没救了。想到哪写到哪,尽量把记得的都写下来8。
我当时是四月份就联系了NLP方向的一个老师并且跟他见面聊了一聊,因为我本科导师跟他很熟,所以只要拿到南大的offer就能进他组了。南大这两年刚刚成立了一个AI院,我去AI院网站上一看,我导师就在教工目录里,我也没多想夏令营申请就报了AI院,并且报了学硕接收调剂(南大学硕专硕并没有任何的区别)。填完申请后AI院的招生老师打电话告诉我AI院只有学硕没有专硕,接受调剂也没用。后来入营了才知道原来我导师在CS院和AI院都招学生,倒是许多lamda的老师只能在AI院招生......当时觉得哦豁完蛋!AI神仙打架还不能调剂专硕,就应该报CS的!
南大CS(AI)夏令营是分批的,当时7月11号是南京本地高校专场,外地的学校在后面两天。我是南师大的,自然就是参加11号的考核。本来第一天的安排是上午给南大本校的学生面试,下午给其他的南京高校面试,晚上机试。而因为上午人比较少,我就很不幸地被安排到上午跟一群南大的大佬一起面试,排队等待的时候看见他们胸有成竹,甚至聊起了天,我只能坐在角落里瑟瑟发抖。
面试部分一般都会先让你作简单的自我介绍,接着根据自我介绍问一些做过的项目,会细问项目里用到的技术,所以做过的项目还是要熟悉其中每一个细节。然后会问一些专业性的问题,会选择让你用中文或英文来回答。这个部分AI和CS还是很不同的,问了别人得知CS的面试比较注重计算机专业课程的一些知识:OS,网络,数据结构,计算机系统啥的。而我参加的面试问了我一些AI的算法,有SVM,朴素贝叶斯,也让我用英语叙述了一下A*搜索算法的原理。除了专业知识也有一些比较主观的问题,问我为啥要报南大AI院,毕业以后想干什么。面试是3对1,3个面试官人都很奈斯,没有什么压迫感,回答的不好也没有怼我,所以我整体发挥还是不错的,没有特别紧张说不出话的感觉。
晚上吃完饭之后是机试,听说南大优秀营员基本就是根据机试成绩给的,所以是得机试者得天下。两个小时三道题,纯英文题面,它的评分机制既不是OI赛制也不是AC赛制,每次提交程序都能看见拿到的分数,但多次提交也没有罚时,每题的最终分数取提交记录中的最高分,可以说是非常友好了。
第一题是一个括号匹配的进阶版本,给你一串只带小括号和中括号的括号字符串,让你求它的分数。
大概是以下几个条件(细节记不太清,就脑补乱写):
- 如果字符串中括号不匹配就直接输出-1。
- () 和 [] 都是1分。
- (A) 的分数为A的分数+1
- [A] 的分数为A的分数*2
- AB 的分数为A的分数+B的分数
比如 [()()] 的分数就是4
这题其实是最难的一题了,我当时是先用栈写了个测试括号是否匹配的算法,把结果为-1的case给过了先。后来想着入栈的时候把括号和深度一起记录下来,遍历到右括号,出栈左括号的时候先将(当前深度-1)的所有分数加起来,再根据当前是小括号还是中括号决定+1还是*2计算出这个括号的分数,分数也需要保存在对应深度的地方给外层括号计算的时候用。
第二题是有一个数组a[n],a[i]代表从位置i下一步可以跳的步数,当你在一个位置i的时候下一步可以选择①跳到i+a[i] ②跳到i-a[i] ③a[i]++。 求从位置0到位置n-1需要的最少步数。bfs裸题,挺简单的。
第三题是有一些带有价值vi和花费ci的物品,给你总预算C,求买东西的最大价值总和是多少,并且要求出在最大价值的前提下有几种购买方案。背包问题加方案数,也挺简单。
后来通过跟外地学校的同学交流发现他们的机试题比南京本地专场的难,看来南大对本校和兄弟院校的学生也是有保护政策的。
题目总体比较简单,我大概1h就AK掉溜了。事后想着南大offer应该挺稳的,而我这个弱鸡能进南大已经很满足了,也就没再去其他学校的夏令营。
网友评论