#include<bits/stdc++.h>
using namespace std;
const int N=1e4+10;
#define int long long
int n,d;
int q[N][22],k[22][N],v[N][22],w[N];
int ans1[N][22],ans2[N][22];
signed main()
{
scanf("%lld %lld",&n,&d);
for(int i=1;i<=n;i++)
{
for(int j=1;j<=d;j++)
{
scanf("%lld",&q[i][j]);
}
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=d;j++)
{
scanf("%lld",&k[j][i]);
}
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=d;j++)
{
scanf("%lld",&v[i][j]);
}
}
for(int i=1;i<=n;i++)
{
scanf("%lld",&w[i]);
}
for(int i=1;i<=d;i++)
{
for(int j=1;j<=d;j++)
{
for(int idx=1;idx<=n;idx++)
{
ans1[i][j]+=k[i][idx]*v[idx][j];
}
}
}
// for(int i=1;i<=n;i++)
// {
// for(int j=1;j<=n;j++)
// {
// printf("%lld ",ans1[i][j]);
// }
// printf("\n");
// }
for(int i=1;i<=n;i++)
{
for(int j=1;j<=d;j++)
{
for(int idx=1;idx<=d;idx++)
{
ans2[i][j]+=q[i][idx]*ans1[idx][j];
}
}
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=d;j++)
{
printf("%lld ",w[i]*ans2[i][j]);
}
printf("\n");
}
}
CCF-CSP 30次 第二题【矩阵运算】
QZZ_PP2023-09-09 8:36
相关推荐
@小博的博客4 分钟前
C++初阶学习第十弹——深入讲解vector的迭代器失效南宫生1 小时前
贪心算法习题其四【力扣】【算法学习day.21】爱吃喵的鲤鱼1 小时前
linux进程的状态之环境变量懒惰才能让科技进步1 小时前
从零学习大模型(十二)-----基于梯度的重要性剪枝(Gradient-based Pruning)7年老菜鸡2 小时前
策略模式(C++)三分钟读懂Ni-Guvara2 小时前
函数对象笔记似霰2 小时前
安卓智能指针sp、wp、RefBase浅析芊寻(嵌入式)2 小时前
C转C++学习笔记--基础知识摘录总结獨枭2 小时前
C++ 项目中使用 .dll 和 .def 文件的操作指南霁月风2 小时前
设计模式——观察者模式