CCF-CSP 30次 第二题【矩阵运算】

计算机软件能力认证考试系统

复制代码
#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");
    }
}
相关推荐
无敌的牛42 分钟前
vector模拟实现(2)
数据结构
alphaTao44 分钟前
LeetCode 每日一题 2025/3/31-2025/4/6
算法·leetcode
Andrew_Ryan1 小时前
android use adb instsll cacerts
算法·架构
Wx120不知道取啥名2 小时前
C语言跳表(Skip List)算法:数据世界的“时光穿梭机”
c语言·数据结构·算法·list·跳表算法
禾小西3 小时前
Java 逐梦力扣之旅_[204. 计数质数]
java·算法·leetcode
LuckyLay3 小时前
LeetCode算法题(Go语言实现)_32
算法·leetcode·golang
ゞ 正在缓冲99%…3 小时前
leetcode295.数据流的中位数
java·数据结构·算法·leetcode·
文弱_书生3 小时前
关于点扩散函数小记
数码相机·算法·数学原理
爪娃侠3 小时前
LeetCode热题100记录-【二叉树】
linux·算法·leetcode
圣保罗的大教堂4 小时前
《算法笔记》9.8小节——图算法专题->哈夫曼树 问题 E: 合并果子-NOIP2004TGT2
算法