谷歌全职上门

第一轮:input是一个tree,从root 往下走,走到每个child 是一样的probability,求每个leaf node最后走到的probability。followup是tree变成DAG,dfs也同样可以解。但是优化解是拓扑排序。
第二轮:class car 有4个properties(int array),比如如下是valid

[1, 2, 0]
[1, 1, 1]
[1, 0, 2]

即某一列上数字一样,或者全部不一样。注意数字只能是0,1,2.

比如如下是invalid

[1, 2, 0]
[1, 2, 1]
[1, 0, 0]

第三轮: 二维矩阵,找sum是target T的所有square(边长任意)。followup是给一个matrix,往下走减去走到的element,往左或右加上走到的element,往上不变。求从任意点出发,sum是target T的path。
第四轮: input 是 int array和target number T,int array 都是 >= 0 的数,找两个不 overlapping 的interval,该interval的sum等于 T。参考 https://leetcode.com/problems/subarray-sum-equals-k/
第五轮: BQ