由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 问个Facebook的面经题
相关主题
Facebook面经发个Amazon intern 的面经吧
How to design google search suggestion?再爆个U家面经吧
面试的职位被repost--我是不是已经没戏了求教,应该如何处理这种状况?谢谢
帮忙分析一下我这个备胎转正的可能性on site 2周后,HM 回信了
请问有人知道大公司onsite interview的细节流程吗帮忙看看这个工作还有没有戏?
google 电面为什么感觉良好的interview都fail了呢
是不是公司自己网站列的positions比较多?问个问题
A家onsite详细面经,求分析followup
相关话题的讨论汇总
话题: 位置话题: char话题: candidates话题: position话题: eliminate
进入JobHunting版参与讨论
1 (共1页)
g*****y
发帖数: 94
1
3. 一种字母游戏这样的
给定四个位置 _,_,_,_
然后每个位置可以选5个candidates,然后问这些candidates最多可以组成多少个有效
的词,字典是给定的。
比如,
如果字典是 [cake, bike, fake]
我们可以这样选candidates
第一个位置可以选 b,c,f,e,d
第二个位置 i,a,o,p,e
第三个位置 k,m,w,q,a
第四个位置 e,g,h,k,l
那这些可以组成3个有效的词 cake, bike, fake.
但是如果,这样选每个位置的candidates
第一个位置可以选 z,c,v,b,y
第二个位置 i,a,o,p,e
第三个位置 k,m,w,q,a
第四个位置 e,g,h,k,l
只能组成一个有效的词就是bike.
这样就是第一种选candidates的方法比较好。
然后问你怎么选每个位置的candidates,最终可以让能组成的词最多。
没有什么特别好的思路,问是不是brutal search,还有更好的方法吗?答:你如果要
brutal search的话,你估算一下时间。
我就开始算时间,发现很长,然后面试官说,那你想办法优化。。。但是因为算brual
search的时间算了太长时间了,就没什么时间优化了。。。
w******a
发帖数: 236
2
是不是要先遍历字典里词的第一个字母,尽量多的往前放,然后依此类推。比如例子里
c,b,f应该要尽量放在第一个位置。
g*****y
发帖数: 94
3
我开始也是想到用这个greedy algorithm. 但是并不是以第一个字母为开头的单词多就
代表要选它,因为还得考虑后面位置的字母。

【在 w******a 的大作中提到】
: 是不是要先遍历字典里词的第一个字母,尽量多的往前放,然后依此类推。比如例子里
: c,b,f应该要尽量放在第一个位置。

a******u
发帖数: 69
4
第二个例子为什么cake不行?
w*****1
发帖数: 6807
5
不知道题目的难度,正常思维应该都是这样想的,也可能有陷阱,特别是频率相同的字
母该选哪个?
面试的时候又不会告诉你这题难度是怎样,哎,真是越来越难了

【在 w******a 的大作中提到】
: 是不是要先遍历字典里词的第一个字母,尽量多的往前放,然后依此类推。比如例子里
: c,b,f应该要尽量放在第一个位置。

w*****1
发帖数: 6807
6
是啊,好奇怪

【在 a******u 的大作中提到】
: 第二个例子为什么cake不行?
g*****y
发帖数: 94
7
cake应该是可以的,我觉得应该是原作者疏忽了这个。

【在 w*****1 的大作中提到】
: 是啊,好奇怪
c*******t
发帖数: 123
8
太简单了。
用tries,把字典的词全部添加到tries,
再对tries递归一遍,从最底层开始
在tries每一层那个指向下一层的指针矩阵里再存上之下所有单词的数量。
就好比二叉树在每一节点再存上之下所有节点数量一样,类似的。
每一层要选择的字母,就是该数量前5大。
triesNode{
triesNode():var(-1){};
int var;
array,128> next;
}

【在 g*****y 的大作中提到】
: 3. 一种字母游戏这样的
: 给定四个位置 _,_,_,_
: 然后每个位置可以选5个candidates,然后问这些candidates最多可以组成多少个有效
: 的词,字典是给定的。
: 比如,
: 如果字典是 [cake, bike, fake]
: 我们可以这样选candidates
: 第一个位置可以选 b,c,f,e,d
: 第二个位置 i,a,o,p,e
: 第三个位置 k,m,w,q,a

T****U
发帖数: 3344
9
这题里面第一个位置的字母不能出现在之后位置上,trie不能保证把

【在 c*******t 的大作中提到】
: 太简单了。
: 用tries,把字典的词全部添加到tries,
: 再对tries递归一遍,从最底层开始
: 在tries每一层那个指向下一层的指针矩阵里再存上之下所有单词的数量。
: 就好比二叉树在每一节点再存上之下所有节点数量一样,类似的。
: 每一层要选择的字母,就是该数量前5大。
: triesNode{
: triesNode():var(-1){};
: int var;
: array,128> next;

g*****y
发帖数: 94
10
开始也想到用Trie来着,但是后来想了想应该也不行或者很麻烦。比如对于其中某一层
,字母a, b, ..., z等可能会出现在这一层的多个Trie节点。因为这要取决于它的父亲
节点。
例子: ..ka.., ..da.., ..ea..,那么a字母在它的那一层其实出现到三个Trie节点,
然后又不能用个HashMap来统计次数,因为这又牵连到上一层的节点。
不知道分析得对不对,继续讨论吧。

【在 c*******t 的大作中提到】
: 太简单了。
: 用tries,把字典的词全部添加到tries,
: 再对tries递归一遍,从最底层开始
: 在tries每一层那个指向下一层的指针矩阵里再存上之下所有单词的数量。
: 就好比二叉树在每一节点再存上之下所有节点数量一样,类似的。
: 每一层要选择的字母,就是该数量前5大。
: triesNode{
: triesNode():var(-1){};
: int var;
: array,128> next;

相关主题
google 电面发个Amazon intern 的面经吧
是不是公司自己网站列的positions比较多?再爆个U家面经吧
A家onsite详细面经,求分析求教,应该如何处理这种状况?谢谢
进入JobHunting版参与讨论
f********y
发帖数: 156
11
感觉应该用图。 比如第一个例子,是个四层的图,在每层选5个,使得从第一层到第四
层的 unique path 数目最多。
这个用greedy 肯定有问题。
大牛说说,这是不是有现成算法啊?
b******b
发帖数: 713
12
throw my brick, :)
Think it the other way around, when you put a char in a specific position,
you are eliminate all the words have that char on other position, e.g. if
you put 'a' in position 0, then all the words have 'a' at position 1,2,3
cannot be constructed.
with this thought, we can construct the char/count for each position, e.g.
at position 0, we have [a:3, b:2, c:1, d:4...]
same for other positions.
now we just need to find the char which will eliminate the least number of
words, e.g. count each char for each position how many words it will
eliminate, and start from the one which will eliminate least, and do it
iteratively until all the positions are filled.

【在 g*****y 的大作中提到】
: 3. 一种字母游戏这样的
: 给定四个位置 _,_,_,_
: 然后每个位置可以选5个candidates,然后问这些candidates最多可以组成多少个有效
: 的词,字典是给定的。
: 比如,
: 如果字典是 [cake, bike, fake]
: 我们可以这样选candidates
: 第一个位置可以选 b,c,f,e,d
: 第二个位置 i,a,o,p,e
: 第三个位置 k,m,w,q,a

f********y
发帖数: 156
13
字母可以重用吧?比如a is used at 2nd and 3rd positions.
“比如,如果字典是 [cake, bike, fake]我们可以这样选candidates第一个位置可以
选 b,c,f,e,d第二个位置 i,a,o,p,e第三个位置 k,m,w,q,a第四个位置 e,g,h,k,l那这
些可以组成3个有效的词 cake, bike, fake.”

throw my brick, :)Think it the other way around, when you put a char in a
specific posit........

【在 b******b 的大作中提到】
: throw my brick, :)
: Think it the other way around, when you put a char in a specific position,
: you are eliminate all the words have that char on other position, e.g. if
: you put 'a' in position 0, then all the words have 'a' at position 1,2,3
: cannot be constructed.
: with this thought, we can construct the char/count for each position, e.g.
: at position 0, we have [a:3, b:2, c:1, d:4...]
: same for other positions.
: now we just need to find the char which will eliminate the least number of
: words, e.g. count each char for each position how many words it will

b******b
发帖数: 713
14
if you can reuse the char, then the trie solution above is the best. sorry
didn't read it carefully.

【在 f********y 的大作中提到】
: 字母可以重用吧?比如a is used at 2nd and 3rd positions.
: “比如,如果字典是 [cake, bike, fake]我们可以这样选candidates第一个位置可以
: 选 b,c,f,e,d第二个位置 i,a,o,p,e第三个位置 k,m,w,q,a第四个位置 e,g,h,k,l那这
: 些可以组成3个有效的词 cake, bike, fake.”
:
: throw my brick, :)Think it the other way around, when you put a char in a
: specific posit........

y***r
发帖数: 8
15
Trie的方法不一定对吧,每一层的选择都会相互影响,感觉有点像max flow那一类题
g*****y
发帖数: 94
16
max flow方法该怎么弄?

【在 y***r 的大作中提到】
: Trie的方法不一定对吧,每一层的选择都会相互影响,感觉有点像max flow那一类题
E*******0
发帖数: 465
17
mark.
f*******2
发帖数: 149
18
先go through 整个字典,4个位置上面,每一个位置26个字母出现的频率排个序。
取每一个位置出现率最高的字母,再让四个位置出现率最高PK,比如例子中第3位置K的
出现率最高。
第3位就选K, 然后在其他3个位置用上面的算法,直到第一轮4个位置都填满。
然后去掉被cover的字,剩下的字里面,以此类推。

【在 g*****y 的大作中提到】
: 3. 一种字母游戏这样的
: 给定四个位置 _,_,_,_
: 然后每个位置可以选5个candidates,然后问这些candidates最多可以组成多少个有效
: 的词,字典是给定的。
: 比如,
: 如果字典是 [cake, bike, fake]
: 我们可以这样选candidates
: 第一个位置可以选 b,c,f,e,d
: 第二个位置 i,a,o,p,e
: 第三个位置 k,m,w,q,a

1 (共1页)
进入JobHunting版参与讨论
相关主题
followup请问有人知道大公司onsite interview的细节流程吗
ONSITE后求助,急!google 电面
ONSITE后的绝望是不是公司自己网站列的positions比较多?
一个半导体公司Onsite 之后A家onsite详细面经,求分析
Facebook面经发个Amazon intern 的面经吧
How to design google search suggestion?再爆个U家面经吧
面试的职位被repost--我是不是已经没戏了求教,应该如何处理这种状况?谢谢
帮忙分析一下我这个备胎转正的可能性on site 2周后,HM 回信了
相关话题的讨论汇总
话题: 位置话题: char话题: candidates话题: position话题: eliminate