#569. 矩阵运算
矩阵运算
问题描述
Softmax() 是 Transformer 中注意力模块的核心算式,其中 均为 的矩阵, 表示 的转置, 表示矩阵乘法。为简化计算,题目将 Softmax 用一维向量 (长度为 )替代,得到简化的表达式:
这里点乘 表示按行标量缩放:若 ,记 为向量 的第 个元素,则把 的第 行的每个元素都乘以 ,得到新的 矩阵,再与 相乘,结果为一个 矩阵。
现给出矩阵 和向量 ,请计算上述简化表达式的结果矩阵并输出。
输入格式
-
第一行包含两个正整数 和 ,表示矩阵的维度(行数与列数);
-
接着依次输入矩阵 、、。每个矩阵按行给出,共 行,每行包含 个用空格分隔的整数;第 行第 个数对应矩阵第 行第 列的元素;
-
最后一行包含 个整数,表示向量 的 个元素()。
-
,;
-
矩阵与向量中的元素均为整数,且绝对值不超过 。
输出格式
输出共 行,每行包含 个用空格分隔的整数,表示计算结果矩阵的第 行到第 行。
样例输入
3 2
1 2
3 4
5 6
10 10
-20 -20
30 30
6 5
4 3
2 1
4 0 -5
样例输出
480 240
0 0
-2200 -1100