Problem 672. Longest run of consecutive numbers
Given a vector a, find the number(s) that is/are repeated consecutively most often. For example, if you have
a = [1 2 2 2 1 3 2 1 4 5 1]
The answer would be 2, because it shows up three consecutive times.
If your vector is a row vector, your output should be a row vector. If your input is a column vector, your output should be a column vector. You can assume there are no Inf or NaN in the input. Super (albeit non-scored) bonus points if you get a solution that works with these, though.
Solution Stats
Problem Comments
-
41 Comments
@Andy The problem posed is basically this: in a given vector, for each run of identical numbers, identify the length of said run; then remove all runs of less than the maximal length, and replace all remaining runs with a single occurrence of the number they repeat.
I finally tackled the last problem!
I’m so proud of myself! I know my programming skills still have room for improvement, but I just had to share this amazing feeling with everyone. What a fantastic moment!
Ultimately solved it. I know that reduced size of the code is rewarded on Cody, but I prioritized readability and code with comments that explains what is logically happening. I didn't rely on diff or vertcat because I wanted to understand the basics of what the code should be doing.
Solution Comments
Show commentsGroup

Basics - Cell Arrays
- 10 Problems
- 1277 Finishers
- Cell joiner
- Create a cell array out of a struct
- Convert a numerical matrix into a cell array of strings
- Split a string into chunks of specified length
- Convert a Cell Array into an Array
- Remove element(s) from cell array
- Cell Counting: How Many Draws?
- String Array Basics, Part 1: Convert Cell Array to String Array; No Missing Values
- Fix the last element of a cell array
- Natural numbers in string form
Problem Recent Solvers5961
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!