May 2009 - May 2017 论坛八周年-你的足迹,我的骄傲


一亩三分地论坛

 找回密码
 获取更多干活,快来注册

一亩三分地官方iOS手机应用下载
查看: 2165|回复: 18
收起左侧

02.17 Facebook 本科Intern跪跪跪经...

[复制链接] |试试Instant~ |关注本帖
DesiRe19931107 发表于 2016-2-18 07:48:03 | 显示全部楼层 |阅读模式

2016(1-3月) 码农类 本科 实习@Facebook - 内推 - 技术电面 |Other其他

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

您需要 登录 才可以下载或查看,没有帐号?获取更多干活,快来注册

x
印度人,两道题。

1. 123456789=100, 在等式左边任意位置加上“-”或者“+”使得等式成立。Print all possible combinations.
2. 两个string,如果第二个在第一个里没有出现return -1,如果出现了return最后一次出现时候在第一个string里的position。. more info on 1point3acres.com
. 鍥磋鎴戜滑@1point 3 acres
顺便求问Facebook的intern是无论如何都两轮面试还是第一轮过了才有第二轮呀?因为recruiter给我的邮件直接说There will be 2 phone interviews, 所以好奇....

评分

4

查看全部评分

本帖被以下淘专辑推荐:

muybienw 发表于 2016-2-18 11:40:45 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
刚写了下code,类似leetcode282

  1.     public List<String> addPlusAndMinus(String left, int right){. 鍥磋鎴戜滑@1point 3 acres
  2.         if(left==null) throw new IllegalArgumentException();

  3.         List<String> ret = new ArrayList<String>();
  4.         backtrack(ret, left, 0, 0, right, "");. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
  5.         return ret;
  6.     }

  7.     private void backtrack(List<String> ret, String s, int pos, int eval, int target, String cur){
  8.         if(pos==s.length()){
  9.             // check condition and make sure string cur is not empty
  10.             if(eval==target && cur.length() > 0) ret.add(cur + " = " + target);
  11.             else return;
  12.         }
  13.         else {
  14.             for(int i=pos+1; i<=s.length(); i++){

  15.                 // check illegal substring in forms like "02". from: 1point3acres.com/bbs
  16.                 if(i>pos+1 && s.charAt(pos)=='0') break;.1point3acres缃

  17.                 int num = Integer.parseInt(s.substring(pos, i));. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴

  18.                 // the first number
  19.                 if(cur.length()==0) backtrack(ret, s, i, num, target, num+"");
  20.                 else{
  21.                     backtrack(ret, s, i, eval+num, target, cur + "+" + num);
  22.                     backtrack(ret, s, i, eval-num, target, cur + "-" + num);
  23.                 }
  24.             }
  25.         }. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
  26.     }
复制代码

评分

1

查看全部评分

回复 支持 1 反对 0

使用道具 举报

 楼主| DesiRe19931107 发表于 2016-2-18 08:34:08 | 显示全部楼层
关注一亩三分地微博:
Warald
AndrewFish 发表于 2016-2-18 08:25
第一题的时间复杂度是不是指数?有更快的吗

我不造呀,但是我觉得鉴于数字的长度是固定的9,所以不算指数?刚刚找到和这题有点类似:
https://leetcode.com/problems/expression-add-operators/

我还没看呢你有兴趣可以看看?
回复 支持 1 反对 0

使用道具 举报

wtcupup 发表于 2016-2-18 08:02:32 | 显示全部楼层
第一道是什么意思啊?能举个例子吗?

过了第一轮才有第二轮的
回复 支持 反对

使用道具 举报

xiaozhuxiaozhu 发表于 2016-2-18 08:07:52 | 显示全部楼层
wtcupup 发表于 2016-2-18 08:02. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
第一道是什么意思啊?能举个例子吗?

过了第一轮才有第二轮的
鏉ユ簮涓浜.涓夊垎鍦拌鍧.
12 + 3 - 4 + 5 + 67 + 8 + 9 = 100
回复 支持 反对

使用道具 举报

 楼主| DesiRe19931107 发表于 2016-2-18 08:13:25 | 显示全部楼层
wtcupup 发表于 2016-2-18 08:02
第一道是什么意思啊?能举个例子吗?. From 1point 3acres bbs

过了第一轮才有第二轮的
. 1point3acres.com/bbs
就是比如 +123+45-67+8-9=100 这种加operator的方式使得等式成立,所以要print出来。比如+1+2+3+4+5+6+7+8+9=100这个等式不成立,所以这个加operator的方式成立,所以不能print。最后要print出所有能使等式成立的方法。
回复 支持 反对

使用道具 举报

 楼主| DesiRe19931107 发表于 2016-2-18 08:14:52 | 显示全部楼层
DesiRe19931107 发表于 2016-2-18 08:13
就是比如 +123+45-67+8-9=100 这种加operator的方式使得等式成立,所以要print出来。比如+1+2+3+4+5+6+7+ ...

不好意思打错了:

就是比如 +123+45-67+8-9=100 这种加operator的方式使得等式成立,所以要print出来。比如+1+2+3+4+5+6+7+8+9=100这个等式不成立,所以这个加operator的方式不对,所以不能print。最后要print出所有能使等式成立的方法。
回复 支持 反对

使用道具 举报

AndrewFish 发表于 2016-2-18 08:25:43 | 显示全部楼层
第一题的时间复杂度是不是指数?有更快的吗
回复 支持 反对

使用道具 举报

 楼主| DesiRe19931107 发表于 2016-2-18 08:30:08 | 显示全部楼层
一亩三分地严打"顶""好贴""收藏了"之类的垃圾回复帖!被警告三次,系统会自动封杀ID!
. more info on 1point3acres.com
想支持楼主,请点击帖子下方的"好苗""分享""收藏"键,酌情给楼主加大米(系统不扣你自己的分)。
积分不够看不了帖子,请参考论坛导航里的"帮助","新手提纲"里有攒积分指南
回复 支持 反对

使用道具 举报

xiaozhuxiaozhu 发表于 2016-2-18 10:06:11 | 显示全部楼层
我个人感觉,你第1题,这个论坛的人找实习的人,20分钟能写出bug free solution的比例大概 1%??
回复 支持 反对

使用道具 举报

AndrewFish 发表于 2016-2-18 10:15:35 | 显示全部楼层
xiaozhuxiaozhu 发表于 2016-2-17 19:06
我个人感觉,你第1题,这个论坛的人找实习的人,20分钟能写出bug free solution的比例大概 1%??

考官也不见得就指望你bug free吧
回复 支持 反对

使用道具 举报

硬梆龙 发表于 2016-2-18 10:46:45 | 显示全部楼层
xiaozhuxiaozhu 发表于 2016-2-18 10:06
我个人感觉,你第1题,这个论坛的人找实习的人,20分钟能写出bug free solution的比例大概 1%??

暴力法O(n^3)随便写
回复 支持 反对

使用道具 举报

xiaozhuxiaozhu 发表于 2016-2-18 10:51:41 | 显示全部楼层
硬梆龙 发表于 2016-2-18 10:46
暴力法O(n^3)随便写

贴代码???????
回复 支持 反对

使用道具 举报

zhenjieruan 发表于 2016-2-18 11:21:21 | 显示全部楼层
我怎么觉得这种题出出来就是摆明了不让人过啊。。。第一题没思路,第二题KMP?还是面本科的intern。。只能祈祷我3月1号面试别遇到印度人了。。楼主加油!!!
回复 支持 反对

使用道具 举报

iammajian 发表于 2016-2-18 11:36:11 | 显示全部楼层
第一题不简单...楼主有第二题是代表第一题解出来了? 好厉害
第二题很像strstr,记下来最后的index貌似就行了吧
回复 支持 反对

使用道具 举报

xiaozhuxiaozhu 发表于 2016-2-18 11:55:49 | 显示全部楼层
muybienw 发表于 2016-2-18 11:40
刚写了下code,类似leetcode282
. 鍥磋鎴戜滑@1point 3 acres
-1 + 2-3 + 4 + 5 + 6 + 78 + 9 = 100
这个算么
回复 支持 反对

使用道具 举报

芥末青豆 发表于 2016-2-18 13:28:47 | 显示全部楼层
第二道题leetcode有吗?.鏈枃鍘熷垱鑷1point3acres璁哄潧
回复 支持 反对

使用道具 举报

muybienw 发表于 2016-2-18 13:57:21 | 显示全部楼层
xiaozhuxiaozhu 发表于 2016-2-18 11:55
-1 + 2-3 + 4 + 5 + 6 + 78 + 9 = 100
这个算么

这个看interviewer怎么要求的吧,做法是一样的
回复 支持 反对

使用道具 举报

xiaozhuxiaozhu 发表于 2016-3-10 06:22:00 | 显示全部楼层
第2题,难道lz用的是kmp算法么?
还是怎么做的呢
回复 支持 反对

使用道具 举报

本版积分规则

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2017-5-27 20:06

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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