楼主: chelly_EGOIST
跳转到指定楼层
上一主题 下一主题
收起左侧

新鲜微软苏州E+D Software Engineer 暑期实习详细面经

🔗
 楼主| chelly_EGOIST 2019-4-23 11:48:50 | 只看该作者
全局:
sekiro 发表于 2019-4-23 11:42
最终面如果前边技术答得好就不会再问coding了

好的,谢谢~
回复

使用道具 举报

🔗
 楼主| chelly_EGOIST 2019-4-23 16:20:29 | 只看该作者
全局:
刚刚面完第三轮线上终面,趁热乎把面经发上来 ..
面试官还没到office的时候就先进了会议室,给了我一道题让我先想着:给定一个函数rand100(),它可以随机返回1 - 100的一个整数,要求用这个函数实现rand10000()
实现方法是100 * rand100() - rand100() + 1
follow up 1: 用rand100()实现rand500(). Χ
实现方法:5 * rand100() - ((rand100() % 5)
follow up 2: 用rand100()实现rand150()
实现方法:3 * (rand100() % 50 + 1) - (rand99() % 3). .и
其中rand99()生成1 - 99的随机数,方法是如果rand100生成了100,那就再rand一次,直到不是100为止
这个follow up没有办法直接通过rand100来实现,因为rand100() % 3生成的0 1 2并不是均匀分布的,实际上rand150本来就没有办法通过rand100在确定时间内生成,只能用rand99来辅助
follow up 4: 给出结论:如果x和y可以用rand100在确定时间内生成,那么给定一个数,问能不能用rand100在确定时间内生成
实现方法:动态规划

第二题:给定一个函数boolean isTriangle(int a, int b, int c)用于判断三个数能否形成三角形,要求实现这个函数
先判断有没有小于等于0的,如果有直接返回false,如果没有,用一个长度为3的数组nums存放a b c,然后从小到大sort,因为只有3个数所以sort很快。sort完以后判断nums[0] 是否大于nums[2] - num[1]。不能直接判断nums[0] + num[1]是否大于nums[2]因为有可能溢出

第二题做完之后面试官稍微问了问简历里的东西都是自己学的还是上课教的,我说是自己学的。还问了平时通过什么来学习,我说各种官方文档、教程还有github,没有追问

最后问面试官大概多久出结果,他说应该很快,我给他的印象还挺好的。不知道是忽悠还是什么。。总之软家的实习面试就到这里啦,希望可以拿到offer吧
回复

使用道具 举报

🔗
 楼主| chelly_EGOIST 2019-4-28 16:19:29 | 只看该作者
全局:
更新:刚刚收到了微软hr发的口头offer,真的是很幸运。实习终于有着落了~
回复

使用道具 举报

🔗
Acker 2019-4-28 18:49:41 来自APP | 只看该作者
全局:
rand那题最后一个follow up能详细说下么?
回复

使用道具 举报

🔗
 楼主| chelly_EGOIST 2019-4-28 21:45:51 | 只看该作者
全局:
Acker 发表于 2019-4-28 18:49
rand那题最后一个follow up能详细说下么?

这题我就说了可以用动态规划之后面试官就没继续问下去了,面试官给了一个结论:给定x和y,如果这两个数都可以通过rand100在确定时间内生成的话,那么x * y也可以用rand100在确定时间内生成。我自己的想法是用一个boolean数组canForm记录各个位置上的元素能不能用rand100在确定时间内生成,然后用一个嵌套的循环,如果canForm[i] && canForm[j],那么canForm[i * j] = true。最后想知道哪个数能不能用rand100在确定时间内生成只需要去查数组就行了。不过我自己也没具体实现过,不知道这么想对不对。。

补充内容 (2019-4-28 21:46):
笔误,应该是canForm[i] && canForm[j],那么canForm[i * j] = true
回复

使用道具 举报

🔗
Chaoss 2019-4-29 04:42:44 | 只看该作者
全局:
rand follow-up的解法666666666
回复

使用道具 举报

🔗
 楼主| chelly_EGOIST 2019-4-29 10:11:12 | 只看该作者
全局:
Chaoss 发表于 2019-4-29 04:42.
rand follow-up的解法666666666

哈哈其实这题做得并不好,犯了好几个错误,面试官比较仁慈hhh_(:з)∠)_
回复

使用道具 举报

🔗
Garhom 2019-4-30 00:56:55 来自APP | 只看该作者
全局:
支持一下!
回复

使用道具 举报

全局:
恭喜楼主,楼主决定去微软苏州了吗,我交大信安大三,今年暑假也是去微软苏州。
回复

使用道具 举报

🔗
刷题 2019-5-7 18:19:48 | 只看该作者
全局:
后生可畏啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表