MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn moreOpportunities for recent engineering grads.

Apply Today**New to MATLAB?**

Given an MxN numeric array (A), return an array (B) in which the middle rows and columns have each been repeated once. It may be easier to think of this problem as two operations: (1) repeat the middle rows, and then (2) repeat the middle columns.

The motivation for this problem is to create an array that, when used in *blockproc(B,[2 2],fun)*, effectively incorporates a sliding window with 50% overlap. (NOTE: yes, *nlfilter* will work on array A, but it requires that the processing output be a scalar, whereas *blockproc* does not)

You may assume that M>1, N>1 (i.e. no scalars or vectors).

**Example**

If

A = [1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16]

Then

B = [1 2 2 3 3 4 5 6 6 7 7 8 5 6 6 7 7 8 9 10 10 11 11 12 9 10 10 11 11 12 13 14 14 15 15 16]

19 correct solutions
4 incorrect solutions

Last solution submitted on Nov 02, 2014

1 player likes this problem

1 player likes this solution

2 Comments