2020计算机保研实录

总算是结束了漫长的保研…先前也参考了很多学长学姐的文章,我也想发挥一下互联网精神就写了这篇文章。希望能帮助到学弟学妹,预祝大家都能被理想的学校录取。
有问题的同学欢迎留言,我会及时回复的23333

2020保研实录

  • 个人背景及综述
  • 夏令营与九推综述
    • 夏令营
    • 九推
    • 一点唠叨
  • 夏令营
    • 南京大学夏令营
      • 机试题目
      • 面试相关
    • 国防科大夏令营
      • 面试
  • 九推
    • 哈工大深圳
      • 机试
      • 面试
    • 中科院计算所
      • 面试
      • 机试
      • 机试2
      • 面试2
      • 面试3
  • 后记
    • 想要告诉大家的一些经验
    • 一些杂想

个人背景及综述

  • 学校及专业:西南某985学校 计算机科学与技术
  • 成绩与排名:未加分前12/242,加分后10/242,主要获得2018全国大学生数学建模大赛国家一等奖,然后学校的一等奖学金和国家励志奖学金
  • 英语:CET-4 612分 CET-6 586分
  • 竞赛:主要是数学建模大赛,没参与过acm…
  • 项目与科研:基本没有,看过很多理论但是都没写过项目…(这个很伤…

夏令营与九推综述

夏令营

南京大学:参与未拿到offer
武汉大学:时间冲突拒了
中科院软件所:由于去南京了拒了(虽然时间不冲突但是两个只隔1天,感觉太赶了)
中科院计算所:同软件所
北航:同软件所
国防科大:参与,因为本来就没打算去面试准备的比较敷衍,没有拿到offer

九推

复旦大学:听说offer不多大多都是专硕,复旦从今年开始专硕8w一年,感觉有点伤不起就没去了…
哈尔滨工业大学(深圳):拿到offer并最终确定
计算所:去参加,因为我的睿智发言被拒了…
北航:28号白天复试,但是哈深要求28号凌晨1点前确认,所以求稳拒了
北邮:同北航

一点唠叨

大家从我夏令营的选择就看的出来这是一个非常反面的例子了…北京明明有3个更好的机会让我去试试却偏要去南大硬刚(南大的机试算是很难的那种机试了)。大家一定要注意没有名校情结啊啥的就别硬刚了…多几次机会试试才是最重要的啊…

夏令营

南京大学夏令营

南大的大致流程是12号早上报道,下午机试,第二天整天面试,第三天上午参观实验室(自由参观那种)。
说到南大的机试就非常的蛋疼了…我由于没有参加过acm竞赛所以机试本来就渣,加上当时dfs都写不顺畅所以自然而然的就被南大机试暴打了……
以下是我的大致回忆,大家可以去其他博客参考其他ac大佬的代码

机试题目

  1. 给定指定数字,删除k个数字,使得删除后的数字最大
    举个栗子,比如12345678,k=2,那么就是删除1和2,得到345678是所有可能情况中最大的。这道题我是贪心做的,先保存每一位在vector里面,然后找到最小数字,相应的删除,最后再乘回来。然而这个数字听说非常的大,long long 都没法存,所以只能以char来输入最后返回long long。结果最后还是有4个用例没有通过(第一个就没有通过,很奇怪)
  2. 有m个男生和n个女生,要求k个男生不能挨在一起,请问一共有多少中排列方法?(所有男生视为相同,意思就是男生A男生B与男生B男生A这种是一种情况)
    当时想dp把我头都想大了,无奈当时dfs也写不顺,这个题想了很久导致最后一题只有很少的时间写,有点可惜。最后回来练习了以下dfs后写出了很dfs的版本,供大家参考。
#include <iostream>
using namespace std;
int ans=0;
int find(int b,int g,int last,int k){//b是剩余男生个数,g是剩余女生个数,last是一个指针,用来判断是男生还是女生,k是最多k个男生
    if(b==0&&g==0)return 0;
    else if(b==0&&g!=0){
        return 1;
    }
    else if(g==0){
        if(last+b>k)return 0;
        else{
            return 1;
        }
    }
    else{
        if(last==k)return find(b,g-1,0,k);
        else return find(b-1,g,last+1,k)+find(b,g-1,0,k);
    }
}
int main(){
    int b,g,k;
    while(cin>>b>>g>>k){
        ans=find(b,g,0,k);
        cout<<ans;
    }
    return 0;
}
  1. 给定二叉树的前序遍历与后序遍历,求可能的二叉树类数
    这道理其实想清楚了真的不难,就是看前序的可能的左子树根节点与后序的右子树根节点是否相同,如果相同就说明有2种情况,不相同说明只有一种情况。画个例子很容易明白的,无奈当时时间太短就没写出来……任何测试合理分配时间都是很重要的吧

机试结束后下了暴雨,感觉就像我当时的心情一样难受…晚上就随便准备了以下面试,看了看相关知识点就睡了

面试相关

第二天的面试:
是在第一天上午报道的时候就分好的,我是上午第7个,感觉时间不早不晚吧23333进去之后首先是1分钟自我介绍,然后老师开始问问题。有3个老师,一个问项目,一个问专业课还有一个问英语与日常(其实都问了些日常)

  1. 知道c++中的符号重载吗?说一下你在实际编程中的应用吧。
    我当时懵了,后来想了想调排序函数的时候不是经常要自定义排序函数吗,里面就经常用重载…
  2. 知道析构函数吧?说一说他的作用
    我当时好像说的是及时释放空间,老师让我再细想以下,我说就是这个吧,老师就笑了笑说最主要的应该是防止内存泄漏,我当时觉得明明差不多吧…现在想一想答问题还是得答到点子上才是
  3. 刚刚说的析构函数,现在给你有指向其他父节点一个不严格多叉树,你要怎么析构各个节点呢?
    我当时懵了,想着递归但是怎么访问那种指向父节点的呢?我就结结巴巴的说用递归每次保存子节点的地址,然后依次析构?老师就反问我指向父节点的怎么办,会有访问异常?然后我就摇摇头说不清楚…老师就给我说你想个最简单的,我就说dfs遍历每一个节点,设置访问数组判断是否访问,老师笑着说那也可以。但是明显感觉这个问题答得不算太好吧…
  4. 知道欧拉图与汉密尔顿图的区别吗?
  5. 说一下全序与偏序的区别吧。
  6. 你平时喜欢干什么?兴趣爱好之类的?
  7. 如果教研室有与你不合的同学你会怎么办?
  8. 如果导师安排了你不愿意的事情,你会怎么做?
  9. Please describe Bubble sort in English.

上面几个问题感觉都挺自然的,最后一个英语想了半分钟然后简单的阐述了一下大致原理。
嗯???说好的问竞赛呢???看来基本上都是看老师的啊…

南大的夏令营应该是最土豪的。。。住的酒店也非常的豪华(虽然是双人间),以前听说是发放饭卡今年改成指定食堂用餐券了,不过吃的也还行没有什么问题(重点错)
虽然留下了遗憾但是南大计算机真的非常的厉害,也有lamda这种理论巨强的实验室也有很多搞cv、nlp应用的老师。做应用的话同等级的学校南大还是很厉害的。

国防科大夏令营

来国防科大的话主要是想感受一下军校的气氛…顺便参观一下天河2号。
国防科大的话,比较适合想要搞底层一点的同学。国防科大的体系结构与操作系统都挺厉害的(毕竟要军用吧),老师很多都是院士啊啥的,著名的天河与银河系列都是国防科大研发的,很厉害。想要读底层的同学,国防科大绝对是很好的选择。
国防科大的话考核主要是面试与政审,没有机试笔试。面试主要是3分钟英文自我介绍,然后老师会问问题。
day1 主要是报道,整理宿舍(不得不吐槽一下上床的那个支撑架,太硬核了)
day2 集体合影,然后是下午与晚上漫长的讲座…
day3 早上体检(排队…排队…),下午讲座,晚上心里测试(这个完全不用担心,很水)
day4 上午面试,下午参观各个实验室,展览馆啥的
day5 上午继续参观,下午结束。上午参观了几个量子相关的实验室…感觉都非常的硬核,里面还有几个清北的物理学长,足见非常的硬核了…

面试

  1. 3分钟英文介绍,我只说了1分钟多一点…真想来国防科大的同学还是认真的准备一下吧
  2. 看我参加了数学建模大赛,就让我讲了讲国赛的论文
  3. 有参与过什么大项目吗?
    这个我巨惨,每参加一场面试都要被问这个问题…真的是本科3年很失败的地方了
  4. 你在简历上写到对cv很感兴趣,介绍一下你了解的模型?
    我就随便扯了扯bp,cnn,rnn,Resnet之类的…(都是看cs231学的)讲的很浅基本没有任何数学成分233333
  5. 平时有什么兴趣爱好?
  6. 你们学校同专业你这个排名一般去哪儿?
    这个问题我踩雷了,我回答的“南大,北航,浙大,计算所软件所之类的,当然还有国防科大”。首先没有把国防科大放在第一位本身就说明了我对国防科大明显没有那么向往,其次是这几个学校对同学在cv方面的吸引力明显比国防科大的强很多,老师自然而然的就认为我肯定会鸽吧…说话真的是一门艺术系列
  7. 对国防科大的看法?为什么想要来国防科大?
    就随便吹了吹…我答完6已经感觉自己凉了2333333

还有一个就是前面的同学面试都是15分钟起步,长的还有20分钟的…大家也被问了很多专业课数学方面的问题,然而我问了以上问题就没了,8分钟就出来了…

长沙真的很热,去了4天回来大家都说我晒黑了…臭豆腐很好吃,茶颜悦色也很好喝233333

九推

9推的话一般是不包吃住的嗯…

哈工大深圳

嗯…说实话一开始并没有想去哈深的,但是后来联系到了一个挺不错的老师后就索性读了…懒得折腾北航了。
哈深和哈工大本部差不多,都是nlp比较厉害,所以想做这方面的同学还是很推荐来的。
哈深的考核形式是机试(不是纯算法机试,有75道选择题,2道常规oj题)加面试。

机试

选择题部分涵盖os、计网、数据库、离散数学,说实话也没法说考了啥…好好复习吧
算法题非常的简单:

  1. 有n个小朋友坐成一圈,顺时针编号1-n。顺时针从1-k报数,谁报到k谁退出,后重新1-k报数。问最后剩下的是几号?
    这个其实用队列非常的好写,但是当时听说只能用c所以就用数组跑了个模拟,总体而言还是很简单的。
  2. 使用梯形法去求指定积分。
    这个是给了3个表达式你自己求值后输出就行。感觉主要是考数学不是考编程的…

还有机试中不能自己加中文注释,否则不能运行…这个卡了我半个小时,很伤
机试大概拿个140分/200分就很稳,但是这个也分批次吧,看和你竞争的同学厉不厉害了

面试

  1. 首先是自我介绍
  2. 学过什么排序算法?分别阐述一下时间与空间复杂度。
    由于我这里没有说桶排于是引出了问题3
  3. 说说时间复杂度最小的排序算法?
    我想了很久是快排没毛病啊?老师提示我空间复杂度没有要求,我才想起来桶排…
  4. 给你一个函数,讲一讲优化策略
    非常的懵逼,我说从空间与时间复杂度优化?老师摇头说从数学的方面,优化函数,我就说忘记了。现在想一想老师的意思可能是让我说最优化的那几个,梯度下降,SGD啥的吧…
  5. 说一说操作系统中缓冲区溢出怎么处理
    懵逼,os课上没学过,所以索性说没学过。后来一查大概是要严格检查访问对象之类的…
  6. 平时喜欢干什么?
  7. 如果给你专硕的offer你介意吗?
  8. 用英文介绍一下你的项目/竞赛吧。
    这个我满脸懵逼,之前没有准备过,就结结巴巴的胡说了一通…
  9. 为什么来哈深?
    常规问题我就没写我的回答了,大家都懂23333

哈深虽然是00年的校区,但是很多建筑都是这两年才修的,非常新。信息楼更是19年才修好的吧?(因为去面试的时候很多学长学姐在搬东西
哈深的话夏令营只收30个人,入营难度堪比清北23333但是7-9月的推免有5波,所以想要获得推免的机会不难。

中科院计算所

由于还是很想去计算所所以就报了计算所,计算所有个需要注意的地方是9推时要求填写的老师是你去面试实验室的老师,所以你要去哪边面试你就填写相应的老师。各个实验室考核方式不同,我是面试的专项技术实验室。这个实验室主要是做网络相关的,还有一些遥感图像处理方面的。
先来这个实验室的先推荐一波郑天垚老师,老师感觉非常好说话,听学长学姐说老师不push,每年也还是有很多论文产出。老师主要是做遥感图像处理的,可能有点偏军工方向。

面试

计算所的面试非常的随和…基本没有问到专业课的问题…

  1. 自我介绍
  2. 讲一讲你的数模比赛吧
  3. 为什么来计算所?

然后老师介绍了实验室主要分为3个部分,一个是做网络的,一个是做遥感的,还有一个是偏硬件点我就完全没记住…

  1. 介绍一下家庭情况吧
  2. 你的科研兴趣爱好是什么?
    这个问题大概就是研究生想要做什么之类的,如实回答就是。(当然能结合一点实验室的具体方向更好,但是你要是不喜欢为什么要报呢23333)
  3. 讲一下你的科研或者项目经历?
    吃亏++
  4. 说一说你最喜欢的一门专业课都讲了什么吧。
    由于刚高强度复习了数据结构与算法,就扯出来讲了一大堆
  5. 看你既没有什么项目也没有科研,那大学3年都主要干了什么?
    (中枪++)我就说大一主要参加社团去了,大二参加数模比赛训练(打断:这个比赛需要训练这么久吗?)我说要慢慢学习各种模型的,还要做一些模拟题,大三主要就是学习专业课(打断:看来是个只认真读书的学生)我:…,课余学习了一些ml相关的知识。
  6. 你说你学了些ML相关知识,给我们讲一讲你学到的吧。
    我当时就说了SVM和CNN,然后讲了讲BP,优化讲了讲SGD

然后就聊了聊日常…出去一看竟然面了快20分钟,可能是我经历过的最长的面试了。

机试

机试是在一个自己的电脑上做的,纸质题,没有oj。1.5小时。

  1. 忘了…反正挺简单的
  2. 删除给定升序数组的重复数,也很简单,只是要注意最后结束条件判断
  3. 参考leetcode93. 复原IP地址,贴一个我当时写的代码
#include <iostream>
#include <vector>
using namespace std;
void dfs(string str,int begin,int size,string temp){
//str是输入的数字,begin是指示指针,size是ip的部分(最多4个部分)
//temp是临时存储答案的数组
   if(size==4){
       if(begin!=str.length())return;
       else {
           temp[temp.length()-1]=' ';
           cout<<temp<<" "<<endl;
       }
   }
   if(begin==str.size())return;
   temp+=str[begin];
   dfs(str,begin+1,size+1,temp+".");
   if(str[begin]!='0'){//该位为0时情况
       temp+=str[begin+1];
       dfs(str,begin+2,size+1,temp+".");
       if(str[begin]<'3'&&(str[begin+1]<'5'||(str[begin+1]=='5'&&str[begin+2]<'6'))){
           temp+=str[begin+2];
           dfs(str,begin+3,size+1,temp+".");
       }
   }
}
int main(int argc, const char * argv[]) {
   string str;
   cin>>str;
   dfs(str,0,0,"");
   return 0;
}

  1. n个字符串的最长公共字串
    这个由于调dfs花了点时间,当时也记不清dp是怎么写的也懒得推了。。。
    网上有很多2个字符串的版本,n个比较n-1次就行。

检查的时候学长直接说1 2题是拿出来放水的hhhhh第3题完美通过,第四题基本没写当时就说了暴力遍历的

机试2

非常的懵逼,另一个老师也叫我去参加他们实验室的机试…机试平台是leetcode,一共5道,1个小时。要求全英文题目。(即使用英文版本)
我直接放出题号吧,大家自行参考。
Leetcode167. 两数之和 II - 输入有序数组
Leetcode21. 合并两个有序链表
Leetcode33. 搜索旋转排序数组
Leetcode19. 删除链表的倒数第N个节点
最后一个难度是困难的,具体忘记了。

这个机试做的不是很好,167我忘记用双指针了结果19又想起来了…占用了很多时间。33之前做过结果边界条件搞错了,有几个用例没有通过,很惨。

面试2

机试完突然又接到做网络那边老师的电话,让我参加他们的面试。
这个问的问题忘记了,大概内容和一开始的面试差不多。只是多了很多老师组内的介绍。
然后最要命的部分来了…老师问我“如果我们给你offer了你还要去其他地方吗?”我脑子一抽,说“可能还要去北航试一试”。。。
我现在只想回去打醒自己…怎么会有人这么回答这个问题呢…这不明摆着让老师尴尬吗

面试3

第二天早上郑老师所在的图像组也约了我面试。面试内容和一开始的类似,也多了很多组内的介绍,包括福利和住宿之类的。然后这个老师又问了我一遍这个问题…我又回答了可能要去…哎,真的是人生中第一次感觉不会说话是多么要命的问题。

最后招生老师给我打电话,还问我“我们给你了offer你确定还要去北航面试吗”我当时有点犹豫了,但是还是说“想要试一试”。哎,说多了都是泪,吐血。
都是血和泪的教训啊…

后记

从大三上开始关注保研的相关信息吧,直到昨天和哈深的老师面试完,终于也算是告一段落了。说句实话,结果不好不坏,中规中矩吧。虽然与心里的预期有一定的落差,但是还是觉得也很满意了。

想要告诉大家的一些经验

  1. 夏令营申请最早的大概5月初就会结束(清华的),一般的截止是6月各个时间段。大家注意把握时间。
  2. 学计算机的总是逃不过机试的,从大三上就可以开始练习了,leetcode,poj都是很好的平台。一般的学校难度leetcode大概是中等。
  3. 专业课不用很着急复习,很多知识点有印象就行。
  4. 一定要重视科研与项目在保研中发挥的作用,特别是申请牛组时。
  5. 尽量多参与夏令营,能有更多的机会。虽然说抓住机会很重要,但是机会多了也不是什么坏事。合理应对冲突的时间,尽量选择多的机会。
  6. 面经可以看看,学会一些说话的技巧,算是锦上添花。

一些杂想

人们都说正是遗憾才成就了美好,这次保研之旅也留下了很多遗憾吧。
前几天一直在想“我可不可以做的更好?可不可以有更好的机会去“更好”的学校?”,直到今天凌晨填完系统收到录取通知,突然觉得一切都发生了,现在能做的也只是总结经验,让自己不要再去犯这些相同的错误了。我的人生很多关键阶段都是这个样子,这算是在关键时候掉链子吗?从高中入学考试的失利到高考的稍差发挥,再到现在有一些许遗憾的保研,也许真的是我没有完全的认清我自己的一些缺点,才一直在这种人生的关键时候掉链子吧。
有的时候一个人在学校的大道上骑车的时候,突然吹过很寒肃的风时,我就会觉得一种莫名的冷静感,觉得心里有很多感觉;但是百感交集在一起时,就忘记了什么是快乐,什么是悲伤,什么是寂寞了。现在坐在电脑前的感觉也很像吧。
我也不知道为啥会在保研博客里写这些,感觉有一点奇怪,但是也算是抒发一下内心的真实感觉吧。谢谢大家读完。
在最后,送给大家一段话吧:
一件事,就算再美好,一旦没有结果,就不要再纠缠,久了你会倦,会累;一个人,就算再留念,如果你抓不住,就要适时放手,久了你会神伤,会心碎。有时,放弃是另一种坚持,你错失了夏花绚烂,必将会走进秋叶静美。任何事,任何人,都会成为过去,不要跟它过不去,无论多难,我们都要学会抽身而退。
保研既然已经成为过去式,我也应该重新收拾行囊,踏上新的征程了。
最后祝愿每一个保研党都能收获满意的offer。

你可能感兴趣的:(计算机夏令营,2020夏令营,夏令营,cs夏令营)