Cody

Problem 29. Nearest Numbers

Solution 1612235

Submitted on 18 Aug 2018 by MUTHYALA VIKAS CHOWDARY
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
A = [30 46 16 -46 35 44 18 26 25 -10]; correct = [8 9]; [i1 i2] = nearestNumbers(A); assert(isequal([i1 i2],correct))

t = NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 16 NaN NaN NaN NaN NaN NaN NaN NaN NaN 14 30 NaN NaN NaN NaN NaN NaN NaN NaN 76 92 62 NaN NaN NaN NaN NaN NaN NaN 5 11 19 81 NaN NaN NaN NaN NaN NaN 14 2 28 90 9 NaN NaN NaN NaN NaN 12 28 2 64 17 26 NaN NaN NaN NaN 4 20 10 72 9 18 8 NaN NaN NaN 5 21 9 71 10 19 7 1 NaN NaN 40 56 26 36 45 54 28 36 35 NaN

2   Pass
A = [1555 -3288 2061 -4681 -2230 -4538 -4028 3235 1949 -1829]; correct = [3 9]; [i1 i2] = nearestNumbers(A); assert(isequal([i1 i2],correct))

t = NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 4843 NaN NaN NaN NaN NaN NaN NaN NaN NaN 506 5349 NaN NaN NaN NaN NaN NaN NaN NaN 6236 1393 6742 NaN NaN NaN NaN NaN NaN NaN 3785 1058 4291 2451 NaN NaN NaN NaN NaN NaN 6093 1250 6599 143 2308 NaN NaN NaN NaN NaN 5583 740 6089 653 1798 510 NaN NaN NaN NaN 1680 6523 1174 7916 5465 7773 7263 NaN NaN NaN 394 5237 112 6630 4179 6487 5977 1286 NaN NaN 3384 1459 3890 2852 401 2709 2199 5064 3778 NaN

3   Pass
A = [-1 1 10 -10]; correct = [1 2]; [i1 i2] = nearestNumbers(A); assert(isequal([i1 i2],correct))

t = NaN NaN NaN NaN 2 NaN NaN NaN 11 9 NaN NaN 9 11 20 NaN

4   Pass
A = [0 1000 -2000 1001 0]; correct = [1 5]; [i1 i2] = nearestNumbers(A); assert(isequal([i1 i2],correct))

t = NaN NaN NaN NaN NaN 1000 NaN NaN NaN NaN 2000 3000 NaN NaN NaN 1001 1 3001 NaN NaN 0 1000 2000 1001 NaN

5   Pass
A = [1:1000 0.5]; correct = [1 1001]; [i1 i2] = nearestNumbers(A); assert(isequal([i1 i2],correct))

t = Columns 1 through 17 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 1.0000 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 2.0000 1.0000 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 3.0000 2.0000 1.0000 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 4.0000 3.0000 2.0000 1.0000 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 5.0000 4.0000 3.0000 2.0000 1.0000 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 6.0000 5.0000 4.0000 3.0000 2.0000 1.0000 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 7.0000 6.0000 5.0000 4.0000 3.0000 2.0000 1.0000 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 8.0000 7.0000 6.0000 5.0000 4.0000 3.0000 2.0000 1.0000 NaN NaN NaN NaN NaN NaN NaN NaN NaN 9.0000 8.0000 7.0000 6.0000 5.0000 4.0000 3.0000 2.0000 1.0000 NaN NaN NaN NaN NaN NaN NaN NaN 10.0000 9.0000 8.0000 7.0000 6.0000 5.0000 4.0000 3.0000 2.0000 1.0000 NaN NaN NaN NaN NaN NaN NaN 11.0000 10.0000 9.0000 8.0000 7.0000 6.0000 5.0000 4.0000 3.0000 2.0000 1.0000 NaN NaN NaN NaN NaN NaN 12.0000 11.0000 10.0000 9.0000 8.0000 7.0000 6.0000 5.0000 4.0000 3.0000 2.0000 1.0000 NaN NaN NaN NaN NaN 13.0000 12.0000 11.0000 10.0000 9.0000 8.0000 7.0000 6.0000 5.0000 4.0000 3.0000 2.0000 1.0000 NaN NaN NaN NaN 14.0000 13.0000 12.0000 11.0000 10.0000 9.0000 8.0000 7.0000 6.0000 5.0000 4.0000 3.0000 2.0000 1.0000 NaN NaN NaN 15.0000 14.0000 13.0000 12.0000 11.0000 10.0000 9.0000 8.0000 7.0000 6.0000 5.0000 4.0000 3.0000 2.0000 1.0000 NaN NaN 16.0000 15.0000 14.0000 13.0000 12.0000 11.0000 10.0000 9.0000 8.0000 7.0000 6.0000 5.0000 4.0000 3.0000 2.0000 1.0000 NaN 17.0000 16.0000 15.0000 14.0000 13.0000 12.0000 11.0000 10.0000 9.0000 8.0000 7.0000 6.0000 5.0000 4.0000 3.0000 2.0000 1.0000 18.0000 17.0000 16.0000 15.0000 14.0000 13.0000 12.0000 11.0000 10.0000 9.0000 8.0000 7.0000 6.0000 5.0000 4.0000 3.0000 2.0000 19.0000 18.0000 17.0000 16.0000 15.0000 14.0000 13.0000 12.0000 11.0000 10.0000 9.0000 8.0000 7.0000 6.0000 5.0000 4.0000 3.0000 20.0000 19.0000 18.0000 17.0000 16.0000 15.0000 14.0000 13.0000 12.0000 11.0000 10.0000 9.0000 8.0000 7.0000 6.0000 5.0000 4.0000 21.0000 20.0000 19.0000 18.0000 17.0000 16.0000 15.0000 14.0000 13.0000 12.0000 11.0000 10.0000 9.0000 8.0000 7.0000 6.0000 5.0000 22.0000 21.0000 20.0000 19.0000 18.0000 17.0000 16.0000 15.0000 14.0000 13.0000 12.0000 11.0000 10.0000 9.0000 8.0000 7.0000 6.0000 23.0000 22.0000 21.0000 20.0000 19.0000 18.0000 17.0000 16.0000 15.0000 14.0000 13.0000 12.0000 11.0000 10.0000 9.0000 8.0000 7.0000 24.0000 23.0000 22.0000 21.0000 20.0000 19.0000 18.0000 17.0000 16.0000 15.0000 14.0000 13.0000 12.0000 11.0000 10.0000 9.0000 8.0000 25.0000 24.0000 23.0000 22.0000 21.0000 20.0000 19.0000 18.0000 17.0000 16.0000 15.0000 14.0000 13.0000 12.0000 11.0000 10.0000 9.0000 26.0000 25.0000 24.0000 23.0000 22.0000 21.0000 20.0000 19.0000 18.0000 17.0000 16.0000 15.0000 14.0000 13.0000 12.0000 11.0000 10.0000 27.0000 26.0000 25.0000 24.0000 23.0000 22.0000 21.0000 20.0000 19.0000 18.0000 17.0000 16.0000 15.0000 14.0000 13.0000 12.0000 11.0000 28.0000 27.0000 26.0000 25.0000 24.0000 23.0000 22.0000 21.0000 20.0000 19.0000 18.0000 17.0000 16.0000 15.0000 14.0000 13.0000 12.0000 29.0000 28.0000 27.0000 26.0000 25.0000 24.0000 23.0000 22.0000 21.0000 20.0000 19.0000 18.0000 17.0000 16.0000 15.0000 14.0000 13.0000 30.0000 29.0000 28.0000 27.0000 26.0000 25.0000 24.0000 23.0000 22.0000 21.0000 20.0000 19.0000 18.0000 17.0000 16.0000 15.0000 14.0000 31.0000 30.0000 29.0000 28.0000 27.0000 26.0000 25.0000 24.0000 23.0000 22.0000 21.0000 20.0000 19.0000 18.0000 17.0000 16.0000 15.0000 32.0000 31.0000 30.0000 29.0000 28.0000 27.0000 26.0000 25.0000 24.0000 23.0000 22.0000 21.0000 20.0000 19.0000 18.0000 17.0000 16.0000 33.0000 32.0000 31.0000 30.0000 29.0000 28.0000 27.0000 26.0000 25.0000 24.0000 23.0000 22.0000 21.0000 20.0000 19.0000 18.0000 17.0000 34.0000 33.0000 32.0000 31.0000 30.0000 29.0000 28.0000 27.0000 26.0000 25.0000 24.0000 23.0000 22.0000 21.0000 20.0000 19.0000 18.0000 35.0000 34.0000 33.0000 32.0000 31.0000 30.0000 29.0000 28.0000 27.0000 26.0000 25.0000 24.0000 23.0000 22.0000 21.0000 20.0000 19.0000 36.0000 35.0000 34.0000 33.0000 32.0000 31.0000 30.0000 29.0000 28.0000 27.0000 26.0000 25.0000 24.0000 23.0000 22.0000 21.0000 20.0000 37.0000 36.0000 35.0000 34.0000 33.0000 32.0000 31.0000 30.0000 29.0000 28.0000 27.0000 26.0000 25.0000 24.0000 23.0000 22.0000 21.0000 38.0000 37.0000 36.0000 35.0000 34.0000 33.0000 32.0000 31.0000 30.0000 29.0000 28.0000 27.0000 26.0000 25.0000 24.0000 23.0000 22.0000 39.0000 38.0000 37.0000 36.0000 35.0000 34.0000 33.0000 32.0000 31.0000 30.0000 29.0000 28.0000 27.0000 26.0000 25.0000 24.0000 23.0000 40.0000 39.0000 38.0000 37.0000 36.0000 35.0000 34.0000 33.0000 32.0000 31.0000 30.0000 29.0000 28.0000 27.0000 26.0000 25.0000 24.0000 41.0000 40.0000 39.0000 38.0000 37.0000 36.0000 35.0000 34.0000 33.0000 32.0000 31.0000 30.0000 29.0000 28.0000 27.0000 26.0000 25.0000 42.0000 41.0000 40.0000 39.0000 38.0000 37.0000 36.0000 35.0000 34.0000 33.0000 32.0000 31.0000 30.0000 29.0000 28.0000 27.0000 26.0000 43.0000 42.0000 41.0000 40.0000 39.0000 38.0000 37.0000 36.0000 35.0000 34.0000 33.0000 32.0000 31.0000 30.0000 29.0000 28.0000 27.0000 44.0000 43.0000 42.0000 41.0000 40.0000 39.0000 38.0000 37.0000 36.0000 35.0000 34.0000 33.0000 32.0000 31.0000 30.0000 29.0000 28.0000 45.0000 44.0000 43.0000 42.0000 41.0000 40.0000 39.0000 38.0000 37.0000 36.0000 35.0000 34.0000 33.0000 32.0000 31.0000 30.0000 29.0000 46.0000 45.0000 44.0000 43.0000 42.0000 41.0000 40.0000 39.0000 38.0000 37.0000 36.0000 35.0000 34.0000 33.0000 32.0000 31.0000 30.0000 47.0000 46.0000 45.0000 44.0000 43.0000 42.0000 41.0000 40.0000 39.0000 38.0000 37.0000 36.0000 35.0000 34.0000 33.0000 32.0000 31.0000 48.0000 47.0000 46.0000 45.0000 44.0000 43.0000 42.0000 41.0000 40.0000 39.0000 38.0000 37.0000 36.0000 35.0000 34.0000 33.0000 32.0000 49.0000 48.0000 47.0000 46.0000 45.0000 44.0000 43.0000 42.0000 41.0000 40.0000 39.0000 38.0000 37.0000 36.0000 35.0000 34.0000 33.0000 50.0000 49.0000 48.0000 47.0000 46.0000 45.0000 44.0000 43.0000 42.0000 41.0000 40.0000 39.0000 38.0000 37.0000 36.0000 35.0000 34.0000 51.0000 50.0000 49.0000 48.0000 47.0000 46.0000 45.0000 44.0000 43.0000 42.0000 41.0000 40.0000 39.0000 38.0000 37.0000 36.0000 35.0000 52.0000 51.0000 50.0000 49.0000 48.0000 47.0000 46.0000 45.0000 44.0000 43.0000 42.0000 41.0000 40.0000 39.0000 38.0000 37.0000 36.0000 53.0000 52.0000 51.0000 50.0000 49.0000 48.0000 47.0000 46.0000 45.0000 44.0000 43.0000 42.0000 41.0000 40.0000 39.0000 38.0000 37.0000 54.0000 53.0000 52.0000 51.0000 50.0000 49.0000 48.0000 47.0000 46.0000 45.0000 44.0000 43.0000 42.0000 41.0000 40.0000 39.0000 38.0000 55.0000 54.0000 53.0000 52.0000 51.0000 50.0000 49.0000 48.0000 47.0000 46.0000 45.0000 44.0000 43.0000 42.0000 41.0000 40.0000 39.0000 56.0000 55.0000 54.0000 53.0000 52.0000 51.0000 50.0000 49.0000 48.0000 47.0000 46.0000 45.0000 44.0000 43.0000 42.0000 41.0000 40.0000 57.0000 56.0000 55.0000 54.0000 53.0000 52.0000 51.0000 50.0000 49.0000 48.0000 47.0000 46.0000 45.0000 44.0000 43.0000 42.0000 41.0000 58.0000 57.0000 56.0000 55.0000 54.0000 ...

6   Pass
% Area codes A = [847 217 508 312 212]; correct = [2 5]; [i1 i2] = nearestNumbers(A); assert(isequal([i1 i2],correct))

t = NaN NaN NaN NaN NaN 630 NaN NaN NaN NaN 339 291 NaN NaN NaN 535 95 196 NaN NaN 635 5 296 100 NaN

7   Pass
% Zip codes A = [60048 61802 01702 60601 10001]; correct = [1 4]; [i1 i2] = nearestNumbers(A); assert(isequal([i1 i2],correct))

t = NaN NaN NaN NaN NaN 1754 NaN NaN NaN NaN 58346 60100 NaN NaN NaN 553 1201 58899 NaN NaN 50047 51801 8299 50600 NaN

Suggested Problems

More from this Author95

Community Treasure Hunt

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

Start Hunting!