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
Solution Comments
Show comments
Loading...
Problem Recent Solvers1362
Suggested Problems
-
Read a column of numbers and interpolate missing data
2355 Solvers
-
Back to basics 8 - Matrix Diagonals
971 Solvers
-
Sum of odd numbers in a matrix
620 Solvers
-
Flip the vector from right to left
11236 Solvers
-
Convert from Fahrenheit to Celsius
28561 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!
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.