Cody

Problem 782. Some Assembly Required

Solution 1411673

Submitted on 9 Jan 2018 by Thomas Steffen
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= [1 2 ; 2 3 ; 3 4 ; 4 5]; y_correct=[1 2 3 4 5]; assert(isequal(assemble_this(x),y_correct)||isequal(assemble_this(x),fliplr(y_correct)))

x = 3 4 4 5 y = 1 2 3 x = 4 5 y = 1 2 3 4 x = 0×2 empty double matrix y = 1 2 3 4 5

2   Pass
x= [1 1 2 3 ; 4 5 6 7 ; 5 4 8 3]; y_correct=[1 1 2 3 8 4 5 6 7]; assert(isequal(assemble_this(x),y_correct)||isequal(assemble_this(x),fliplr(y_correct)))

x = 4 5 6 7 y = 1 1 2 3 8 4 5 x = 0×4 empty double matrix y = 1 1 2 3 8 4 5 6 7

3   Pass
x=[2 3 ; 4 2 ; 3 1 ; 1 5 ; 5 9]; y_correct=[9 5 1 3 2 4]; assert(isequal(assemble_this(x),y_correct)||isequal(assemble_this(x),fliplr(y_correct)))

x = 4 2 1 5 5 9 y = 2 3 1 x = 1 5 5 9 y = 1 3 2 4 x = 5 9 y = 4 2 3 1 5 x = 0×2 empty double matrix y = 4 2 3 1 5 9 x = 4 2 1 5 5 9 y = 2 3 1 x = 1 5 5 9 y = 1 3 2 4 x = 5 9 y = 4 2 3 1 5 x = 0×2 empty double matrix y = 4 2 3 1 5 9

4   Pass
x=[10:-1:6 ; 1:5 ; 5:0.25:6]; y_correct=[1:4 5:0.25:6 7:10]; assert(isequal(assemble_this(x),y_correct)||isequal(assemble_this(x),fliplr(y_correct)))

x = 1 2 3 4 5 y = 10.0000 9.0000 8.0000 7.0000 6.0000 5.7500 5.5000 5.2500 5.0000 x = 0×5 empty double matrix y = 10.0000 9.0000 8.0000 7.0000 6.0000 5.7500 5.5000 5.2500 5.0000 4.0000 3.0000 2.0000 1.0000 x = 1 2 3 4 5 y = 10.0000 9.0000 8.0000 7.0000 6.0000 5.7500 5.5000 5.2500 5.0000 x = 0×5 empty double matrix y = 10.0000 9.0000 8.0000 7.0000 6.0000 5.7500 5.5000 5.2500 5.0000 4.0000 3.0000 2.0000 1.0000

5   Pass
x=[8 16 24 ; 2 4 8 ; 6 4 2]; y_correct=[6 4 2 4 8 16 24]; assert(isequal(assemble_this(x),y_correct)||isequal(assemble_this(x),fliplr(y_correct)))

x = 6 4 2 y = 24 16 8 4 2 x = 0×3 empty double matrix y = 24 16 8 4 2 4 6 x = 6 4 2 y = 24 16 8 4 2 x = 0×3 empty double matrix y = 24 16 8 4 2 4 6

6   Pass
y=ceil(rand*7)+5; ry=[rand(1,y) y]; fry=fliplr([y ry(1:end-1)]); atf=assemble_this([fry ; ry]); y_correct=[y fry]; assert(isequal(atf,y_correct)||isequal(atf,fliplr(y_correct)))

x = 0×7 empty double matrix y = 6.0000 0.9044 0.1456 0.8200 0.8259 0.7168 0.5131 6.0000

7   Pass
t=rand(1,2); x=[8 16 24 ; 2 4 8 ; 6 4 2 ; 24 t]; at=assemble_this(x); y_correct=[fliplr(t) 24 16 8 4 2 4 6]; assert(isequal(at,y_correct)||isequal(at,fliplr(y_correct)))

x = 2 4 8 6 4 2 y = 8.0000 16.0000 24.0000 0.5975 0.9992 x = 6 4 2 y = 0.9992 0.5975 24.0000 16.0000 8.0000 4.0000 2.0000 x = 0×3 empty double matrix y = 0.9992 0.5975 24.0000 16.0000 8.0000 4.0000 2.0000 4.0000 6.0000

8   Pass
k=5+ceil(8*rand); x=randperm(k); y=randperm(k)+k; at=assemble_this([x x ; x y]); y_correct=[x x y]; assert(isequal(at,y_correct)||isequal(at,fliplr(y_correct)))

x = 0×26 empty double matrix y = Columns 1 through 29 10 11 4 6 9 5 1 8 7 13 2 12 3 10 11 4 6 9 5 1 8 7 13 2 12 3 16 23 21 Columns 30 through 39 15 24 14 22 19 17 20 25 18 26

Suggested Problems

More from this Author80

Community Treasure Hunt

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

Start Hunting!