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

Facebook Onsite

全局:

2015(10-12月) 码农类General 硕士 全职@meta - 内推 - Onsite  | | Fail | 应届毕业生

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
突然想上来发个facebook面经,我面的是西雅图第一轮jedi:
各种behavior question:
1. tell me about yourself
我就说了下intern的经历啊
2. what do you learn from your internship
我就说我学到很多啊,比如ownership啊,怎么把自己coding style fit in the team啊,怎么快速学习问题啊等等。
3. why facebook
我就说两个,一个是facebook很牛逼啊make impact啊,之前那个facebook app在2012年之前还是很慢的因为是web base的
跟着后来就变得很快啊说明facebook一直都在进步啊,这时候jedi就说“哦!我当时也在那个组里面,我做的是那个阅览图
片那个模块。” 跟着我说第二个就是facebook的open culture很适合我,我之前的那个实习公司也很open,员工卡上没有title
大家的idea都能够交流。

总体来说我觉得behavior基本是秒他的,因为我觉得我准备了他可以问的所有问题了哈哈。跟着coding问题
字母和数字的转换 A = 1 B = 2 AA = 27 基本是26进制的转换, 他要我写了两个边的转换。 我写出来了不过最后我用的是
(char)('a'-1+i) 的方式来转换字母的,不过我用的是i%26,也就是z的时候会变成(char)(-1)。这个bug被他看出来了,跟着
他一个箭步上来帮我改了!!!加了个if。。。。跟着就说好然后走了。。。

第二轮ninja
您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies

第三轮ninja
word ladder变型,叫我随便找一个可以的path出来,基本我写的每一步她都要我说这样写的理由,跟着做笔记。我用dfs+hashset写完之后,
被她发现了一个bug,就是在找到path之后我没有完全return导致答案没有了最后一个word,跟着我马上改了。之后她问我能不能cut branch
我看不出来。。。。她提示其实放进hashset的可以不再remove,因为如果走过一个word发现这个word不行那么以后就没有必要再走这个word了。
跟着问我如果word可以从abc变道abcd 就是变一个或者加一个letter我应该怎么改。我就说加点东西就好,跟着就写出来了。跟着这轮就大概没了。

一周后收到拒信。
看来应该是第一轮没有bug free和最后一轮答的不大prefect和有bug。挺伤心的

评分

参与人数 5大米 +321 收起 理由
admin + 300
west0428 + 3 感谢分享! 加油~
风一样的人 + 5 感谢分享!
1guangnian + 10 patpat, 题目确实挺难的
一路向北~ + 3 感谢分享!

查看全部评分


上一篇:Amazon OA
下一篇:iCIMS codility 题目

本帖被以下淘专辑推荐:

推荐
atlas1017 2016-10-4 23:40:03 | 只看该作者
全局:
haobotao000 发表于 2016-10-3 15:35
感觉第二题,只要n>= 4,就永远抓不到小偷。有人能举个反例吗?

(1,1,2,2,1) ...
回复

使用道具 举报

推荐
sealove999 2016-4-4 14:29:30 | 只看该作者
全局:
第三个
  1. public class Solution {
  2.   public List<String> wordLadder(String beginWord, String endWord, Set<String> wordList,
  3.       Set<String> tabu) {
  4.     if (beginWord.equals(endWord)) {
  5.       List<String> ret = new ArrayList<>();
  6.       ret.add(endWord);
  7.       return ret;
  8.     }
  9.     tabu.add(beginWord);

  10.     char[] arr = beginWord.toCharArray();
  11.     for (int i = 0; i < arr.length; i++) {
  12.       char orig = arr[i];
  13.       for (char c = 'a'; c <= 'z'; c++) {
  14.         if (c != orig) { // prune
  15.           arr[i] = c;
  16.           String w = String.valueOf(arr);
  17.           if (wordList.contains(w) && !tabu.contains(w)) { // prune with tabu
  18.             List<String> r = wordLadder(w, endWord, wordList, tabu);
  19.             if (r != null) {
  20.               r.add(0, beginWord);
  21.               return r;
  22.             }
  23.           }
  24.         }
  25.       }
  26.       arr[i] = orig; // reset
  27.     }

  28.     for (int i = 0; i <= beginWord.length(); i++) { // handle adding one letter
  29.       for (char c = 'a'; c < 'z'; c++) {
  30.         String w = beginWord.substring(0, i) + c + beginWord.substring(i);
  31.         if (wordList.contains(w) && !tabu.contains(w)) {
  32.           List<String> r = wordLadder(w, endWord, wordList, tabu);
  33.           if (r != null) {
  34.             r.add(0, beginWord);
  35.             return r;
  36.           }
  37.         }
  38.       }
  39.     }
  40.     return null;
  41.   }

  42.   public static void main(String[] args) {
  43.     Set<String> dict = new HashSet<>();
  44.     dict.add("hot");
  45.     dict.add("dot");
  46.     dict.add("dog");
  47.     dict.add("lot");
  48.     dict.add("log");
  49.     dict.add("cog");
  50.     dict.add("hit");
  51.     dict.add("lotg");
  52.     dict.add("aotg");
  53.     Solution s = new Solution();
  54.     System.out.println(s.wordLadder("hit", "cog", dict, new HashSet<String>()));
  55.     System.out.println(s.wordLadder("hit", "aotg", dict, new HashSet<String>()));
  56.     return;
  57.   }
  58. }
复制代码
回复

使用道具 举报

推荐
sealove999 2016-4-4 14:29:53 | 只看该作者
全局:
第二个
  1. public class Solution {
  2.   public boolean canSurvive(int n, int[] seq) {
  3.     boolean[][] survive = new boolean[seq.length][n];
  4.     Arrays.fill(survive[0], true); // the first day
  5.     survive[0][seq[0]] = false; // dead in the first day
  6.     for (int i = 1; i < seq.length; i++) {
  7.       for (int j = 0; j < n; j++) {
  8.         boolean left = j - 1 >= 0 ? survive[i - 1][j - 1] : false;
  9.         boolean right = j + 1 < n ? survive[i - 1][j + 1] : false;
  10.         survive[i][j] = (left || right) && seq[i] != j;
  11.       }
  12.     }
  13.     for (int i = 0; i < n; i++) {
  14.       if (survive[seq.length - 1][i]) {
  15.         return true;
  16.       }
  17.     }
  18.     return false;
  19.   }

  20.   public boolean canSurvive2(int n, int[] seq) {
  21.     boolean[] survive = new boolean[n];
  22.     Arrays.fill(survive, true); // the first day
  23.     survive[seq[0]] = false; // dead in the first day
  24.     for (int i = 1; i < seq.length; i++) {
  25.       boolean[] surviveNext = new boolean[n];
  26.       for (int j = 0; j < n; j++) {
  27.         boolean left = j - 1 >= 0 ? survive[j - 1] : false;
  28.         boolean right = j + 1 < n ? survive[j + 1] : false;
  29.         surviveNext[j] = (left || right) && seq[i] != j;
  30.       }
  31.       survive = surviveNext;
  32.     }
  33.     for (int i = 0; i < n; i++) {
  34.       if (survive[i]) {
  35.         return true;
  36.       }
  37.     }
  38.     return false;
  39.   }

  40.   public static void main(String[] args) {
  41.     Solution s = new Solution();
  42.     System.out.println(s.canSurvive(3, new int[] {1, 1}));
  43.     System.out.println(s.canSurvive2(3, new int[] {1, 1}));
  44.     return;
  45.   }
  46. }
复制代码

补充内容 (2016-4-4 14:30):
楼主思路好棒
回复

使用道具 举报

🔗
testcase 2014-11-17 11:02:37 | 只看该作者
全局:
我觉得LZ的题目在fb onsite里面算偏难的。。能答成这样实属不易。。
回复

使用道具 举报

🔗
 楼主| anbmic 2014-11-18 03:40:40 | 只看该作者
全局:
njuprincerain 发表于 2014-11-17 11:02
我觉得LZ的题目在fb onsite里面算偏难的。。能答成这样实属不易。。

出来的时候还觉得自己面得不错的。。。感觉已经尽力了。。收到reject的时候还是挺伤心的,不过bar高没办法
回复

使用道具 举报

🔗
kennynoodlehous 2014-11-18 03:44:22 | 只看该作者
全局:
楼主申请的西雅图的职位还是选的在西雅图ONSITE?
回复

使用道具 举报

🔗
 楼主| anbmic 2014-11-18 05:12:19 | 只看该作者
全局:
majiamajia 发表于 2014-11-18 03:44
楼主申请的西雅图的职位还是选的在西雅图ONSITE?

申的是西雅图的职位哦
回复

使用道具 举报

🔗
kennynoodlehous 2014-11-18 10:53:02 | 只看该作者
全局:
是new grad吗?
new grad这难度……?
回复

使用道具 举报

🔗
一路向北~ 2014-11-18 13:26:38 | 只看该作者
全局:
若问楼主,什么是jedi?
回复

使用道具 举报

🔗
 楼主| anbmic 2014-11-19 13:20:25 | 只看该作者
全局:
一路向北~ 发表于 2014-11-18 13:26
若问楼主,什么是jedi?

就是绝地武士,一个基本只问你behavior question的人。
回复

使用道具 举报

🔗
pyemma 2014-11-20 08:39:41 | 只看该作者
全局:
过几天要去onsite面intern,希望题目不要太难
回复

使用道具 举报

🔗
jg7933 2014-11-20 09:23:36 | 只看该作者
全局:
这几天也要去onsite了,感觉这个难度有点高。。
回复

使用道具 举报

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

本版积分规则

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