给定一个表示数字矩阵的字符串,返回该矩阵的行和列。
例如,给定下面这个包含换行符的字符串:
9 8 7
5 3 2
6 6 7
它表示这个矩阵:
1 2 3
|---------
1 | 9 8 7
2 | 5 3 2
3 | 6 6 7
你的代码应该能输出:
我们这个示例矩阵的行:
它的列:
要完成这道练习,你需要创建数据类型 Matrix,让它具有 Eq 和 Show 实例,然后实现以下函数:
colscolumnflattenfromListfromStringreshaperowrowsshapetranspose你会看到已经放好了一个占位的数据声明和类型签名,但定义这些函数、以及创建有意义的数据类型、newtype 或类型同义词,都要由你自己来完成。
不需要对输入做任何校验。如果矩阵不是矩形、遇到了非法字符等,就让它失败吧。
shape 是 (rows, cols)