This example comes from Steve Eddins' blog: Learning Lessons from a One-Liner
Write a function that takes a list or array of numbers as input and return the largest number that is adjacent to a zero.
Example:
Input x = [1 5 3 0 2 7 0 8 9 1 0] Output y is 8
This problem was originally posed by Greg Wilson of Software Carpentry.
Solution Stats
Problem Comments
4 Comments
Solution Comments
Show comments
Loading...
Problem Recent Solvers5519
Suggested Problems
-
Return the 3n+1 sequence for n
8492 Solvers
-
7318 Solvers
-
Replace NaNs with the number that appears to its left in the row.
3066 Solvers
-
Convert a numerical matrix into a cell array of strings
2405 Solvers
-
Get the length of a given vector
13175 Solvers
More from this Author96
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
Two more tests:
1. Input x = [-4 -2 0 -4 -1 0]
Output y is -1.
2. Input x = [-9 -3 0 0 -5 0 -2 -1]
Output y is -2.
Good comment, Gaik. A lot of solutions (including mine) will break with two consecutive zeros.
Why: "Input x = [-9 -3 0 0 -5 0 -2 -1] Output y is -2."???
Output should be 0. It doesn't say anywhere that the number adjacent to a zero must be nonzero!
This was challenging