Problem Description
Robin's mathematic's teacher gives him some homework:
Given an integer array A of size N. For each subarray of size B, find the leftmost number with the maximum number of distinct prime factors.
You are asked to return the sum of all such numbers. Since the answer may be large return answer % 109 + 7.
1 <= N <= 106
1 <= A[i] <= 106
1 <= B <= N
First argument is an integer array A of size N.
Second argument is an integer B.
Return an integer denoting the sum of numbers with the maximum number of distinct prime factors for each subarray of size B.
Input 1:
A = [10, 2, 1, 1, 2] B = 3
Input 2:
A = [18, 36, 15, 210] B = 2
Output 1:
14
Output 2:
264
Explanation 1:
Subarray of size 3 are: (10, 2, 1) -> 10 is the leftmost element which has maximum distinct prime factors, i.e 2. (2, 1, 1) -> 2 is the leftmost element which has maximum distinct prime factors, i.e 1. (1, 1, 2) -> 2 is the leftmost element which has maximum distinct prime factors, i.e 1.
Explanation 2:
Total sum will be 264 i.e (18 + 36 + 210)
NOTE: You only need to implement the given function. Do not read input, instead use the arguments to the function. Do not print the output, instead return values as specified. Still have a question? Checkout Sample Codes for more details.