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");
    }
}
相关推荐
清水迎朝阳2 小时前
客户端软件 — 用户统计方案
服务器·c++·客户端·用户统计
Re.不晚2 小时前
挑战做100道力扣算法- DAY1
算法·leetcode·职场和发展
蓝悦无人机2 小时前
《Planning algorithms》读书笔记——第1章 引言
算法·读书笔记·规划算法·lavalle
Sagittarius_A*2 小时前
分组密码基础(二):Feistel 结构与 DES 的设计思想
算法·信息安全·密码学·des·数论
青山木3 小时前
Hot 100 --- 搜索插入位置
java·数据结构·算法·leetcode
再卷也是菜3 小时前
C++17(下)
c++
alexwang2113 小时前
HDU 4348 详细题解
c++·算法·题解·hdu·主席树·可持久化数据结构·可持久化线段树
程序员zgh3 小时前
C++ 拷贝赋值运算符 详解
c语言·开发语言·c++
可编程芯片开发4 小时前
基于分段变步长搜索RMDCFT算法的天基雷达空间机动目标检测方法MATLAB仿真,对比RMDCFT算法
算法
2501_946736164 小时前
在线考试平台如何选型?从功能、优势与应用场景角度详解
大数据·人工智能·算法