GREAT!!! :-)
Would of never guessed it!
This actually has a minor bug -- it may fail on inputs containing negative numbers, e.g. x=[1 -1], however this is simply fixable by taking abs(x).
wonderful solution
it never gets tired to watch this kinda code.
Test | Status | Code Input and Output |
---|---|---|
1 | Pass |
%%
x = [1 2 3 4 5 6 7 8 9 0 0 0 0 0 0 0 0 0 9 8 7 6 5 4 3 2 1];
LP = [9 10] %[Length Position]
assert(isequal(LengthAndPosnZeros(x),LP))
LP =
9 10
|
2 | Pass |
%%
x = [1 0 3 49 3 2 232 3 0 0 0 0 0 0 8 290 0 0 0 12 323 34];
LP = [6 9]
assert(isequal(LengthAndPosnZeros(x),LP))
LP =
6 9
|
3 | Pass |
%%
x = [1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 0];
LP = [7 3];
assert(isequal(LengthAndPosnZeros(x),LP))
|
4 | Pass |
%%
x = [1 2 0 0];
LP = [2 3] %[Length Position]
assert(isequal(LengthAndPosnZeros(x),LP))
LP =
2 3
|
5 | Pass |
%%
x = [1 2 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0];
LP = [9 3] %[Length Position]
assert(isequal(LengthAndPosnZeros(x),LP))
LP =
9 3
|
6 | Pass |
%%
x = [1 0 0 0 0 0 0 0 0 0 1];
LP = [9 2] %[Length Position]
assert(isequal(LengthAndPosnZeros(x),LP))
LP =
9 2
|
7 | Pass |
%%
x = [111 541 0 45 3 0 0 0 15 26 0 4 84 3 84 0 9];
LP = [3 6] %[Length Position]
assert(isequal(LengthAndPosnZeros(x),LP))
LP =
3 6
|
8 | Pass |
%%
x = [1 0 1];
LP = [1 2] %[Length Position]
assert(isequal(LengthAndPosnZeros(x),LP))
LP =
1 2
|
1600 Solvers
2810 Solvers
Find a subset that divides the vector into equal halves
332 Solvers
Output any real number that is neither positive nor negative
316 Solvers
273 Solvers
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!