Cody

Problem 67. Find common elements in matrix rows

Solution 1988687

Submitted on 24 Oct 2019 by Robin French
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 = []; y_correct = []; assert(isequal(common_by_row(x),y_correct))

y = []

2   Pass
x = [1e100; 1e100]; y_correct = [1e100]; assert(isequal(common_by_row(x),y_correct))

y = [] ref = 1.0000e+100 cmp = 1.0000e+100 r = 1 c = 1 cmpAsCell = 1×1 cell array {[1.0000e+100]} tf = logical 1 idx = logical 1 y = 1.0000e+100

3   Pass
x = [1; 2]; y_correct = []; assert(isequal(common_by_row(x),y_correct))

y = [] ref = 1 cmp = 2 r = 1 c = 1 cmpAsCell = 1×1 cell array {[2]} tf = logical 0 idx = logical 0

4   Pass
x = ones(10); y_correct = [1]; assert(isequal(common_by_row(x),y_correct))

y = [] ref = 1 1 1 1 1 1 1 1 1 1 cmp = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 r = 9 c = 10 cmpAsCell = 9×1 cell array {1×10 double} {1×10 double} {1×10 double} {1×10 double} {1×10 double} {1×10 double} {1×10 double} {1×10 double} {1×10 double} tf = 9×10 logical array 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 idx = 1×10 logical array 1 1 1 1 1 1 1 1 1 1 y = 1

5   Pass
x = magic(10); y_correct = []; assert(isequal(common_by_row(x),y_correct))

y = [] ref = 92 99 1 8 15 67 74 51 58 40 cmp = 98 80 7 14 16 73 55 57 64 41 4 81 88 20 22 54 56 63 70 47 85 87 19 21 3 60 62 69 71 28 86 93 25 2 9 61 68 75 52 34 17 24 76 83 90 42 49 26 33 65 23 5 82 89 91 48 30 32 39 66 79 6 13 95 97 29 31 38 45 72 10 12 94 96 78 35 37 44 46 53 11 18 100 77 84 36 43 50 27 59 r = 9 c = 10 cmpAsCell = 9×1 cell array {1×10 double} {1×10 double} {1×10 double} {1×10 double} {1×10 double} {1×10 double} {1×10 double} {1×10 double} {1×10 double} tf = 9×10 logical array 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 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 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 idx = 1×10 logical array 0 0 0 0 0 0 0 0 0 0

6   Pass
x = wilkinson(9); y_correct = [0 1]; assert(isequal(common_by_row(x),y_correct))

y = [] ref = 4 1 0 0 0 0 0 0 0 cmp = 1 3 1 0 0 0 0 0 0 0 1 2 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 2 1 0 0 0 0 0 0 0 1 3 1 0 0 0 0 0 0 0 1 4 r = 8 c = 9 cmpAsCell = 8×1 cell array {1×9 double} {1×9 double} {1×9 double} {1×9 double} {1×9 double} {1×9 double} {1×9 double} {1×9 double} tf = 8×9 logical array 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 idx = 1×9 logical array 0 1 1 1 1 1 1 1 1 y = 0 1

7   Pass
x = [3 -2 1 NaN; NaN 0 -2 3]; y_correct = [-2 3]; assert(isequal(common_by_row(x),y_correct))

y = [] ref = 3 -2 1 NaN cmp = NaN 0 -2 3 r = 1 c = 4 cmpAsCell = 1×1 cell array {1×4 double} tf = 1×4 logical array 1 1 0 0 idx = 1×4 logical array 1 1 0 0 y = -2 3