Inspired by Problem 38 by Cody Team. Given a vector x, return a vector y of the values in x sorted by the number of CONSECUTIVE occurrences in x. Ties (and it is the difficulty) are sorted from lowest to highest. So if x = [1 2 2 2 3 3 7 7 93] then
y = [2 3 7 1 93]
But if x = [1 1 2 2 2 3 3 7 7 1 93] then
y = [2 1 3 7 1 93]
Update - Test case added 22-8-22
Solution Stats
Problem Comments
5 Comments
Solution Comments
Show comments
Loading...
Problem Recent Solvers439
Suggested Problems
-
12810 Solvers
-
Project Euler: Problem 6, Natural numbers, squares and sums.
2585 Solvers
-
Create a vector whose elements depend on the previous element
807 Solvers
-
Cell Counting: How Many Draws?
2525 Solvers
-
Circular Primes (based on Project Euler, problem 35)
658 Solvers
More from this Author43
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
@bmtran is a too strong for me.
I think that in case 3, the correct answer should be: y_correct1 = [1 0 2 9 1 -5 2 0 11] and in case 4: y_correct0 = [1 0 1 0], or did I misunderstood the goal?
I agree with J.R.! Menzinger. Correct answers given are wrong.
No, the provided answers in the test cases are correct. This is "the difficulty" that Jean-Marie mentions above: for integers that are tied by number of occurrences, they are to be sorted within the tied subset in ascending order, not kept in the original ordering within the vector.
Do you mind do explain in a different way? it is not clear for what exactly i should do. It miss 3 problems for me, but in any of them it is not clear the problem itself.