Problem 84. Longest Divisor Run
Given the vector a, find the longest run of consecutive numbers that can be evenly divided by the same number d where d > 1.
Example:
Input a = [5 4 2 8 3 7 14] Output len is 3, d is 2
The last two numbers, 7 and 14, are divisible by 7, but the run of numbers [4 2 8] are all divisible by 2. So the longest run is 3. You can assume that d is unique.
Solution Stats
Problem Comments
-
1 Comment
A lot of the smaller answers use gcd, which fails for a=[2 4 6 9 18 21]. This is because the gcd of 9 and 18 is 9, but for 6 and 9 it's 3, which throws off the tally count because 3 is also common between 9 and 18.
Solution Comments
Show commentsProblem Recent Solvers1334
Suggested Problems
-
Find the longest sequence of 1's in a binary sequence.
6402 Solvers
-
Replace NaNs with the number that appears to its left in the row.
3018 Solvers
-
Make a random, non-repeating vector.
10040 Solvers
-
Given a window, how many subsets of a vector sum positive
859 Solvers
-
Output any real number that is neither positive nor negative
400 Solvers
More from this Author96
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!