这道题的重点就是二维数组和一维数组的坐标对应。设为一维数组的下标(从0开始),那么二维数组(m,n)下的坐标为:
,
表示第i行,
代表第j列。
class Solution {
public:
vector<vector<int>> construct2DArray(vector<int>& original, int m, int n) {
vector<vector<int>> ans;
if (original.size()!=(m*n)){
return ans;
}
for(int i=0; i<m; i++){
vector<int> row;
for (int j=0; j<n; j++){
row.push_back(original[(i)*n+j]);
}
ans.push_back(row);
}
return ans;
}
};