连续子集产品

时间:2014-04-06 22:28:39

标签: subset

我把这作为一个面试问题,正在思考如何解决它。 假设一个数字是一个数组= {7,6,3},它的连续子串是{7},{6},{3},{7,6},{6,3},{7,6,3 }({7,3}无效)检查任何两个子集的乘积是否相等。

所以{6,2,3}因{6} = {2 * 3}而失败 任何人都可以给我一个正确的方向。

1 个答案:

答案 0 :(得分:0)

如果数组中有n个数字。所以有n * (n - 1) / 2个连续的子集。您可以预处理子集'产品,并插入map。然后枚举子集以查找产品在map中是否有两次以上。然后你可以解决这个问题。