You are given a list 'v' of numbers. This list may contain repeated numbers. Your objective is to create a new list that maintains the same elements in the same order as the original list. However, if a number appears more than 'k times in the original list, only the first 'k' occurences of that number will be included in the new list. Any additional instances of that number beyond the k-th occurrence will be discarded. Note that, if k equals 0, the resulting list would be empty.
Example: if v = [ 1, 3, 5, 3, 1, 3, 5, 3, 1 ] and k = 2, the function should output [ 1, 3, 5, 3, 1, 5 ].
Solution Stats
Problem Comments
3 Comments
Solution Comments
Show comments
Loading...
Problem Recent Solvers11
Suggested Problems
-
46596 Solvers
-
Circular Primes (based on Project Euler, problem 35)
651 Solvers
-
Matrix multiplication across rows
397 Solvers
-
(Linear) Recurrence Equations - Generalised Fibonacci-like sequences
411 Solvers
-
Find the Oldest Person in a Room
20305 Solvers
More from this Author53
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
A tip: it's best to use isempty() instead of comparing to [], since [] is specifically 0-by-0 and not equal to e.g. a 0-by-1 array.
Christian, you're right, I've made the change. Thanks for the tip!
Thanks, minnolina!