Cody

# Problem 1898. Too Many Zeros, Dump Them!

Solution 2925280

Submitted on 8 Sep 2020 by Jens Kjærgaard Boldsen
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

### Test Suite

Test Status Code Input and Output
1   Pass
x = 0; y_correct = []; assert(isequal(ZeroDumping(x),y_correct))

cols = logical 1 rows = logical 1 ix1 = [] ix2 = [] b = []

2   Pass
x = 1; y_correct = 1; assert(isequal(ZeroDumping(x),y_correct))

cols = logical 0 rows = logical 0 ix1 = 1 ix2 = 1 b = 1

3   Pass
x = [1 0]; y_correct = 1; assert(isequal(ZeroDumping(x),y_correct))

cols = 1×2 logical array 0 1 rows = logical 0 ix1 = 1 ix2 = 1 b = 1

4   Pass
x = [1 0 1 0; 0 0 1 0]; y_correct = [1 0 1 0 0 1]; assert(isequal(ZeroDumping(x),y_correct));

cols = 1×4 logical array 0 1 0 1 rows = 2×1 logical array 0 0 ix1 = 2 ix2 = 3 b = 1 0 1 0 0 1

5   Pass
x=[1,0, -3, 1i,0; 2,0.3,2i, 0, 0; 0,0, 0, inf, 0; 0,0, 0, 0, 1]; y_correct =x;% x(4,5) is useful, I don't want to dump it. assert(isequal(ZeroDumping(x),y_correct));

cols = 1×5 logical array 0 0 0 0 0 rows = 4×1 logical array 0 0 0 0 ix1 = 4 ix2 = 5 b = 1.0000 + 0.0000i 0.0000 + 0.0000i -3.0000 + 0.0000i 0.0000 + 1.0000i 0.0000 + 0.0000i 2.0000 + 0.0000i 0.3000 + 0.0000i 0.0000 + 2.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i Inf + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 1.0000 + 0.0000i

6   Pass
x =[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 eps]; y_correct =x; assert(isequal(ZeroDumping(x),y_correct));

cols = 1×5 logical array 1 1 1 1 0 rows = 5×1 logical array 1 1 1 1 0 ix1 = 5 ix2 = 5 b = 1.0e-15 * 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.2220

7   Pass
x =[1 1 0 0 0 1 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0]; y_correct =[1 1 0 0 1 0 0 0 0 0 0 3]; assert(isequal(ZeroDumping(x),y_correct));

cols = 1×5 logical array 0 0 1 0 1 rows = 5×1 logical array 0 0 0 1 1 ix1 = 3 ix2 = 4 b = 1 1 0 0 1 0 0 0 0 0 0 3

8   Pass
x =[1 1 0 0 0 1 0 0 0 0 0 0 0 3 0 0 0 0 0 inf 0 0 0 0 0]; y_correct =[1 1 0 0 0 1 0 0 0 0 0 0 0 3 0 0 0 0 0 inf]; assert(isequal(ZeroDumping(x),y_correct));

cols = 1×5 logical array 0 0 1 0 0 rows = 5×1 logical array 0 0 0 0 1 ix1 = 4 ix2 = 5 b = 1 1 0 0 0 1 0 0 0 0 0 0 0 3 0 0 0 0 0 Inf

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!