问题1314--行列转换

1314: 行列转换

时间限制: 1 Sec  内存限制: 256 MB
提交: 20  解决: 5
[提交] [状态] [讨论版] [命题人:]

题目描述

百度百科解释:
矩阵中,若数值为0的元素数目远远多于非0元素的数目,并且非0元素分布没有规律时,则称该矩阵为稀疏矩阵;与之相反,若非0元素数目占大多数时,则称该矩阵为稠密矩阵。定义非零元素的总数比上矩阵所有元素的总数为矩阵的稠密度。
矩阵中非零元素的个数远远小于矩阵元素的总数,并且非零元素的分布没有规律,通常认为矩阵中非零元素的总数比上矩阵所有元素总数的值小于等于0.05时,则称该矩阵为稀疏矩阵(sparse matrix),该比值称为这个矩阵的稠密度;与之相区别的是,如果非零元素的分布存在规律(如上三角矩阵、下三角矩阵、对角矩阵),则称该矩阵为特殊矩阵
比较基本的定义是矩阵中的大多数元素为零,并且可以利用零元素节约大量存储、运算和程序运行时间。
稀疏矩阵几乎产生于所有的大型科学工程计算领域,包括计算流体力学、统计物理、电路模拟、图像处理、纳米材料计算等。
最常用的稀疏矩阵存储格式为列压缩存储(compressedcolumn storage,CCS) 或行压缩存储( ompressedrow storage,CRS)。
现在的要求是,对于一个 n×m 的稀疏矩阵,按照行、列、值的格式读入 k 个元素(其他位置的值为 0),再输出这些数。

输入

第 1 行 3 个整数,表示 n、m 和 k,每两个数之间用一个空格隔开。
以下 k 行,按照“行优先(从上到下、从左到右)”的方式读入 k 个非 0 元素。每行 3 个数,依次为行号、列号、元素值,每两个数之间用一个空格隔开。

输出

输出k个数,按照“列优先(从左到右、从上到下)”的方式输出,每两个数之间用一个空格隔开。

样例输入 Copy

4 5 3
1 2 12
1 4 23
4 3 45

样例输出 Copy

12 45 23

提示





来源/分类

指针