确定第一个Q索引的所有数组的特定索引处的最大元素

时间:2016-02-12 09:29:01

标签: arrays algorithm

给定几个包含小于M的自然数的数组。每个数组的大小可能会有所不同,但所有数组大小的总和必须为N。确定从Q开始的第一个0索引的所有数组的特定索引处的最大元素。如果索引大于数组的大小,则索引的大小为模数。

约束:

N <= 50000
M <= 32
Q <= 1000000

示例:

N = 6
M = 4
array1 = [0,1,3]
array2 = [2,0]
array3 = [1]
Q = 6

Results = [2,1,3,1,2,3]
Explanation : At index 3, the largest element from array1[3%3], array2[3%2], and array3[3%1] is 1.

我通过简单地将所有数组从O(√N * Q)迭代到0索引来了解Q解决方案,但我需要更快的解决方案。也许通过以这种方式使约束M受益可能提供更快的解决方案,但仍然无法弄明白。

0 个答案:

没有答案