My opinion is that the answers for this problem are wrong. The problem is asking for counting zeros between values 1. So for example for Input = [0 1 0 0 0 1 0 1 1 1 0 0 0 1 0 1 1 0 0] the correct Output is [3 1 0 0 3 1 0] and not [1 3 1 0 0 3 1 0 2]. Reasoning that there is no 1 at the beginning and at the end of the vector and so the beginning and end zeros should not be counted.
How about adding a test case in which vector x starts with a 1, such as x = [1 0 0 1 0] ? (Several of the submitted/approved solutions would give the answer as y = [0 2 1] instead of y = [2 1] . )
I would suggest adding the base case x=[]; y=[] (or 0 depending on definition of the problem
I was looking for this solution:
http://www.mathworks.de/matlabcentral/cody/problems/1678-count-consecutive-0-s-in-between-values-of-1/solutions/267945
but I was not precise enough with the regexp... ;-)
Nice Shot!!
274 Solvers
Project Euler: Problem 10, Sum of Primes
683 Solvers
233 Solvers
Calculate the Number of Sign Changes in a Row Vector (No Element Is Zero)
222 Solvers
264 Solvers