-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconstruct2DArray.java
More file actions
26 lines (20 loc) · 1.07 KB
/
Copy pathconstruct2DArray.java
File metadata and controls
26 lines (20 loc) · 1.07 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/* You are given a 0-indexed 1-dimensional (1D) integer array original, and two integers, m and n. You are tasked with creating a 2-dimensional (2D) array with m rows and n columns using all the elements from original.
The elements from indices 0 to n - 1 (inclusive) of original should form the first row of the constructed 2D array, the elements from indices n to 2 * n - 1 (inclusive) should form the second row of the constructed 2D array, and so on.
Return an m x n 2D array constructed according to the above procedure, or an empty 2D array if it is impossible. */
class Solution {
public int[][] construct2DArray(int[] original, int m, int n) {
// Check if we can form m x n array
if (original.length != m * n) {
return new int[0][0]; // Impossible case
}
int[][] result = new int[m][n];
int index = 0;
// Fill the 2D array row by row
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
result[i][j] = original[index++];
}
}
return result;
}
}