一、题目描述
在 MATLAB 中,有一个非常有用的函数 reshape ,它可以将一个 m x n 矩阵重塑为另一个大小不同(p x
q)的新矩阵,但保留其原始数据。给你一个由二维数组 mat 表示的 m x n 矩阵,以及两个正整数 p和q ,分别表示想要的重构的矩阵的行数和列数。
重构后的矩阵需要将原始矩阵的所有元素以相同的 行遍历顺序 填充。
如果具有给定参数的 reshape 操作是可行且合理的,则输出新的重塑矩阵;否则,输出原始矩阵。
C++程序要求输入输出格式如下:(和原题目的输入输出要求略有不同)
输入:
第一行输入m,n,表示原始矩阵的行数和列数。
第二行到第m+1行输入原始矩阵的各数据。
第m+2行输入p,q,表示重塑的矩阵的行数和列数。
输出:
重塑后的矩阵
示例如下:
输入:3 4
1 2 3 4
5 6 7 8
9 10 11 12