一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 2469|回复: 21
收起左侧

Zenefits onsite 面经

[复制链接] |试试Instant~ |关注本帖
summermo 发表于 2015-9-2 12:41:42 | 显示全部楼层 |阅读模式

2015(7-9月) 码农类 本科 全职@Zenefits - 内推 - Onsite |Other其他

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

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
1. 设计怎么存储和计算大的正数
2. 给定两个date, 计算两个date之间的相差多少个星期
3. 原题 http://www.mitbbs.com/article_t/JobHunting/32931597.html
4. 给定二维矩阵, 矩阵用0, 1, -1表示,   0表示可以通行,-1 表示不能通行, 1 表示路标, 求几个路标之间的最短距离并且返回这些路径相交的点
比如,下面3 个1之间的最短路径 的相交的点是位于第二行第三列的点
0 0 0  -1 0
0 1 0  0  1
0 -1 1 0  0 . from: 1point3acres.com/bbs

5. 设计题设计一个survey的网站




补充内容 (2015-9-4 02:05):
第一题写错了,是大整数,有正负的,

评分

3

查看全部评分

本帖被以下淘专辑推荐:

mmliu 发表于 2015-9-2 14:38:12 | 显示全部楼层
谢谢楼主分享

请问这是一共几轮的题啊?
回复 支持 反对

使用道具 举报

hulahu 发表于 2015-9-2 15:03:32 | 显示全部楼层
题都挺难的。 blessed 楼主。。
回复 支持 反对

使用道具 举报

mmliu 发表于 2015-9-3 20:46:48 | 显示全部楼层
请问  设计怎么存储和计算大的正数 这题,是用 String 来代表 integer 么?
回复 支持 反对

使用道具 举报

 楼主| summermo 发表于 2015-9-4 02:04:40 | 显示全部楼层
mmliu 发表于 2015-9-3 20:46. 1point 3acres 璁哄潧
请问  设计怎么存储和计算大的正数 这题,是用 String 来代表 integer 么?
. 1point3acres.com/bbs
一共是4轮,每一轮是1-2题

大整数如果想更优化的话可以用integer array, 每个element是int, 代表了- 2^31 to 2^31个正数,element at idx0可以代表the least significant,  element at idx nth 可以代表the most significant, 再想优化的话可以用一个linked list, 每个element 可以是1 byte or 2 byte,  比如2byte的话可以代表2^16个整数, 然后串起来就可以代表significant的大小, 最后要注意符号位
回复 支持 反对

使用道具 举报

xtt2016 发表于 2015-9-4 07:46:07 | 显示全部楼层
楼主是software 还是data ?
回复 支持 反对

使用道具 举报

mmliu 发表于 2015-9-4 08:04:22 | 显示全部楼层
xtt2016 发表于 2015-9-4 07:46
楼主是software 还是data ?

我也不晓得是哪个组,应该是software 鏉ユ簮涓浜.涓夊垎鍦拌鍧.

补充内容 (2015-9-6 06:48):
答串了,忽略我~
回复 支持 反对

使用道具 举报

夜行码农耗子 发表于 2015-9-6 04:04:37 | 显示全部楼层
谢谢楼主分享,第一题不太明白请教一下~
如果是个array的话array[i]代表的不应该是0-9也就是大整数中的某一位吗?如果array[i]存整个int范围的话是什么思路还请楼主指教啊~~
回复 支持 反对

使用道具 举报

haogechixiang 发表于 2015-9-6 08:05:38 | 显示全部楼层
夜行码农耗子 发表于 2015-9-6 04:04
谢谢楼主分享,第一题不太明白请教一下~
如果是个array的话array代表的不应该是0-9也就是大整数中的某一位 ...

我觉得你说的是对的 一位存一个digit。可以用byte数组来存
回复 支持 反对

使用道具 举报

夜行码农耗子 发表于 2015-9-6 08:12:55 | 显示全部楼层
haogechixiang 发表于 2015-9-6 08:05
我觉得你说的是对的 一位存一个digit。可以用byte数组来存

但是楼主的那种想法也对,但是好像需要非常高深的能力才能把array[int]转换成大整数并且做运算,没想明白呢想请教一下
回复 支持 反对

使用道具 举报

tiantiana 发表于 2015-9-27 03:56:31 | 显示全部楼层
NO.1 Question:

If use int array to represent big Int, one array can be 32 bigInt, right, since each int has 32 bits to assign to 32 bigInt for using.

Let's say the first int is 1011100010.....0010001 (32 bits), which means whether the 32 bigInts are negative or not.
                the second int is 1101000100010100 (32 bits), which means the lowest bits of 32 bitInts are 1 or 0.
   ...................................................
回复 支持 反对

使用道具 举报

tiantiana 发表于 2015-9-27 06:16:08 | 显示全部楼层
2. 给定两个date, 计算两个date之间的相差多少个星期

Thank lz for the mianjing!

how to answer this question? use java date type? how to detect which week the current date is in?

Thanks,
回复 支持 反对

使用道具 举报

ronaldo17 发表于 2015-10-29 09:16:40 | 显示全部楼层
请问lz,设计题有没有一些具体的要求?比如讨论数据库怎么设计,其他还有没有面试官要求考虑的点,比如query太频繁怎么scale之类的问题?谢谢啦
回复 支持 反对

使用道具 举报

nothingtrouble 发表于 2015-10-29 10:45:11 | 显示全部楼层
tiantiana 发表于 2015-9-27 06:16
2. 给定两个date, 计算两个date之间的相差多少个星期
. from: 1point3acres.com/bbs
Thank lz for the mianjing!

不知道有什么比较好的解法没有,我想的是,Date转成unix_timestamp,再算diff in days,然后算diff in weeks。
回复 支持 反对

使用道具 举报

nothingtrouble 发表于 2015-10-29 10:48:20 | 显示全部楼层
lz,你第三问用的dp吗? 我想了半天。用LC的Distinct Subsequences的方法写了一个:
  1. public static int count(String s, String t){
  2.         int i,j,i0,j0,k,ls=s.length(),lt = t.length(); 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  3.         int[][] dp = new int[ls+1][lt+1];
  4.         for(i=0;i<=ls;i++) dp[i][0] = 1;
  5.         . 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
  6.         for(i=1;i<=ls;i++){. From 1point 3acres bbs
  7.                 i0=i-1;
  8.                 for(j=2;j<=lt;j+=2){. 1point3acres.com/bbs
  9.                         j0=j-2;.1point3acres缃
  10.                         if(t.charAt(j0+1)=='+') k=2;.鏈枃鍘熷垱鑷1point3acres璁哄潧
  11.                         else k=4;
  12.                         String tt = buildStr(t, j0);
  13.                         if(i0-k+1>=0 && s.substring(i0-k+1, i0+1).equals(tt)){. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
  14.                                 dp[i][j] = dp[i-1][j] + (j<2?1:dp[i-k][j-2]);. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  15.                         } else dp[i][j] = dp[i-1][j];.鐣欏璁哄潧-涓浜-涓夊垎鍦
  16.                 }
  17.         }. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
  18.         return dp[ls][lt];
  19. }
复制代码
回复 支持 反对

使用道具 举报

nothingtrouble 发表于 2015-10-29 10:48:35 | 显示全部楼层
lz,你第三问用的dp吗? 我想了半天。用LC的Distinct Subsequences的方法写了一个:
  1. public static int count(String s, String t){
  2.         int i,j,i0,j0,k,ls=s.length(),lt = t.length();
  3.         int[][] dp = new int[ls+1][lt+1];
  4.         for(i=0;i<=ls;i++) dp[i][0] = 1;
  5.        
  6.         for(i=1;i<=ls;i++){. 鍥磋鎴戜滑@1point 3 acres
  7.                 i0=i-1;
  8.                 for(j=2;j<=lt;j+=2){
  9.                         j0=j-2;.鏈枃鍘熷垱鑷1point3acres璁哄潧
  10.                         if(t.charAt(j0+1)=='+') k=2;
  11.                         else k=4;. from: 1point3acres.com/bbs
  12.                         String tt = buildStr(t, j0);. from: 1point3acres.com/bbs
  13.                         if(i0-k+1>=0 && s.substring(i0-k+1, i0+1).equals(tt)){
  14.                                 dp[i][j] = dp[i-1][j] + (j<2?1:dp[i-k][j-2]);
  15.                         } else dp[i][j] = dp[i-1][j];
  16.                 }
  17.         }
  18.         return dp[ls][lt];
  19. }
复制代码
回复 支持 反对

使用道具 举报

aiuou 发表于 2015-10-31 07:18:56 | 显示全部楼层
大整数那个题不就是tiny url吗?
回复 支持 反对

使用道具 举报

aiuou 发表于 2015-11-2 13:20:57 | 显示全部楼层
aiuou 发表于 2015-10-31 07:18
大整数那个题不就是tiny url吗?

看错题了,掩面遁
回复 支持 反对

使用道具 举报

pennlio 发表于 2015-11-11 23:49:01 | 显示全部楼层
4题是不是要用dijkstra
回复 支持 反对

使用道具 举报

新屋熊 发表于 2015-11-13 15:40:12 | 显示全部楼层
第二题个人觉得应该是你自己知道今天的date跟礼拜几,利用跟第一个date的days diff,可以计算第一个date是礼拜几。知道了第一个date是礼拜几,知道第二个date,就能算出week diff.
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

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

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

custom counter

GMT+8, 2016-12-5 04:51

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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