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
-
2099 Solvers
-
Project Euler: Problem 1, Multiples of 3 and 5
3715 Solvers
-
Flip the main diagonal of a matrix
919 Solvers
-
Make a run-length companion vector
662 Solvers
-
11867 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.