微软暑期实习一面凉经
首先英文自我介绍,项目介绍和提问
这个没什么好说的,因为是留学生所以早都预料到了,自然是有bear来,我全都防出去了,防出去了啊
然后就是始料不及的一个问题
大概意思是,给你一个文件,要求下载里面出现过的所有东西,每个文件有一些prerequisite要下载,文件可以以istream方式读入
下载接口提供了,但是下载时间未知,所有程序下载顺序必须正确,而且要求时间最快
我直接懵掉了,不管是打lc还是acm都没见过这种题面。
我刚开始看到顺序以为是个字符串处理+拓扑排序什么的,然后就写了个拓扑,之后他告诉我如何让时间最短?我问有办法知道下载时间么,他说随机,我说能不能知道下载完了,他说这个程序不知道。
然后我就陷入了沉思,面试官说我没理解他什么意思。时间就快到了,然后我随口说了句round robin 调度器,他表示我终于说得在线了。然后一问,他说是否下载完只有当前程序才能知道。然后顺着他说的,我说是不是反向建图然后把入边度数为0的拿去轮询下载,完成之后再dfs上去把入边计数-1?
这感觉就是揉碎的拓扑排序 + round robin scheduler + 线段树的lazy标揉碎放在一起。
他说大概就是这样。
我:????
之后面试官陪我多聊了一会,说他觉得给我多一点时间是能写出来的,真可惜。
然后今天就收到一面not pass通知了,内心毫无波动,甚至有点想笑。
我看别人明明都是lc medium哇,为什么到了我问题就突然变了画风,哭了。
准备二面候补面了。
#实习##面经##软件研发工程师##微软##校招#