题目描述

这是一道模板题。

分别给定 n×p n \times pn×p 和 p×m p \times mp×m 的两个矩阵 A AA 和 B BB,求 A×B A \times BA×B。

输入格式

第一行三个正整数 n nn、p pp、m mm,表示矩阵的长宽。
之后的 n nn 行,每行 p pp 个整数,表示矩阵 A AA。
之后的 p pp 行,每行 m mm 个整数,表示矩阵 B BB。

输出格式

输出 n nn 行,每行 m mm 个整数,表示矩阵 A×B A \times BA×B,每个数模 109+7 10 ^ 9 + 710​9​​+7 输出。

样例

样例输入

3 4 5
-2 -8 -9 8
-10 0 6 -8
-10 -6 6 9
4 -7 5 -5 9
10 -2 -10 5 5
-3 -7 -3 8 -2
-6 7 7 3 -2

样例输出

999999898 149 153 999999929 999999951
999999997 999999979 999999883 74 999999921
999999835 103 55 95 999999857

数据范围与提示

1≤n,p,m≤500, −109≤Ai,j,Bi,j≤109 1 \leq n, p, m \leq 500,\ -10 ^ 9 \leq A_{i, j}, B_{i, j} \leq 10 ^ 91≤n,p,m≤500, −10​9​​≤A​i,j​​,B​i,j​​≤10​9​​

矩阵乘法

#include<cstdio>
#include<iostream>
#include<algorithm>
using namespace std;
const int N=,mod=1e9+;
int a[N][N],b[N][N],c[N][N];
int n,p,m;
int main()
{
scanf("%d%d%d",&n,&p,&m);
for(int i=;i<=n;i++)
for(int j=;j<=p;j++)scanf("%d",&a[i][j]),a[i][j]=(a[i][j]+mod)%mod;
for(int i=;i<=p;i++)
for(int j=;j<=m;j++)scanf("%d",&b[i][j]),b[i][j]=(b[i][j]+mod)%mod;
for(int i=;i<=n;i++)
for(int j=;j<=m;j++)
for(int k=;k<=p;k++)
c[i][j]=(long long)(1ll*c[i][j]+1ll*a[i][k]*b[k][j]%mod)%mod;
for(int i=;i<=n;i++)
{
for(int j=;j<=m;j++)printf("%d ",c[i][j]);
puts("");
}
return ;
}

loj #100. 矩阵乘法的更多相关文章

  1. LibreOJ #100. 矩阵乘法

    内存限制:256 MiB 时间限制:2000 ms 标准输入输出 题目类型:传统 评测方式:文本比较 上传者: 匿名     模版 以前一直不过样例原来是读入优化没写负数.. 屠龙宝刀点击就送 #in ...

  2. loj#2128. 「HAOI2015」数字串拆分 矩阵乘法

    目录 题目链接 题解 代码 题目链接 loj#2128. 「HAOI2015」数字串拆分 题解 \(f(s)\)对于\(f(i) = \sum_{j = i - m}^{i - 1}f(j)\) 这个 ...

  3. LOJ.6074.[2017山东一轮集训Day6]子序列(DP 矩阵乘法)

    题目链接 参考yww的题解.本来不想写来但是他有一些笔误...而且有些地方不太一样就写篇好了. 不知不觉怎么写了这么多... 另外还是有莫队做法的...(虽然可能卡不过) \(60\)分的\(O(n^ ...

  4. 矩阵乘法优化DP复习

    前言 最近做毒瘤做多了--联赛难度的东西也该复习复习了. Warning:本文较长,难度分界线在"中场休息"部分,如果只想看普及难度的可以从第五部分直接到注意事项qwq 文中用(比 ...

  5. *HDU2254 矩阵乘法

    奥运 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submissi ...

  6. CH Round #30 摆花[矩阵乘法]

    摆花 CH Round #30 - 清明欢乐赛 背景及描述 艺术馆门前将摆出许多花,一共有n个位置排成一排,每个位置可以摆花也可以不摆花.有些花如果摆在相邻的位置(隔着一个空的位置不算相邻),就不好看 ...

  7. 【Codeforces718C】Sasha and Array 线段树 + 矩阵乘法

    C. Sasha and Array time limit per test:5 seconds memory limit per test:256 megabytes input:standard ...

  8. 矩阵乘法的MapReduce实现

    对于任意矩阵M和N,若矩阵M的列数等于矩阵N的行数,则记M和N的乘积为P=M*N,其中mik 记做矩阵M的第i行和第k列,nkj记做矩阵N的第k行和第j列,则矩阵P中,第i行第j列的元素可表示为公式( ...

  9. 【BZOJ-4547】小奇的集合 矩阵乘法 + 递推

    4547: Hdu5171 小奇的集合 Time Limit: 2 Sec  Memory Limit: 256 MBSubmit: 175  Solved: 85[Submit][Status][D ...

随机推荐

  1. volatile、synchronized、lock有什么区别,以及在哪些场景下使用哪种方式?

    [转]JVM锁机制volatile/synchronized/lock 1.volatile实现原理 (1)聊聊并发(一)——深入分析Volatile的实现原理 --硬件级别锁实现,Lock前缀指令会 ...

  2. activity切换交互动画

    activity切换的时候,想要有动画,那么... 1.想要有效果的activity设置theme <activity android:name=".MainActivity" ...

  3. MySQL之架构与历史(一)

    MySQL架构与历史 和其他数据库系统相比,MySQL有点与众不同,它的架构可以在多种不同的场景中应用并发挥好的作用,但同时也会带来一点选择上的困难.MySQL并不完美,却足够灵活,它的灵活性体现在很 ...

  4. 极简Node教程-七天从小白变大神(二:中间件是核心)

    当我们只引入express时,前述的那些功能都是没有启用的.那么,如何将这些功能添加进来呢?express通过其中间件机制实现了这些功能的管理.每一个中间件对应一个功能,而中间件可以是第三方库,也可以 ...

  5. MoveWindow() SetWindowPos()的区别与联系

    敲代码时,突然发现有一个背景图片无法显示,百思不得其解,最终发现是MoveWindow() SetWindowPos()这两个函数的使用不当造成的. 这里把这两个函数的前世今生给分析一下. 先看Mov ...

  6. selenium 浏览器驱动下载地址

    谷歌浏览器驱动下载http://chromedriver.storage.googleapis.com/index.html 火狐浏览器驱动下载http://ftp.mozilla.org/pub/f ...

  7. 使用make构建c程序

    1.Targets, Prerequisites, Commands Targets: 大意是生成的可执行文件. Prerequisites: 生成可执行文件的目标文件或C 语言源文件. Target ...

  8. github 客户端总是登录失败,提示密码错误

    把输入法调成英文即可!!

  9. jQuery动画的hover连续触发动画bug处理

    一.问题 为元素设置hover上实现动画的效果,当鼠标反复快速进入元素时,动画会在鼠标停止后依然执行,导致动画和鼠标的动作不一致. 二.解决方法 要解决这种问题,可以使用jquery的stop()方法 ...

  10. leetcode 15 3sum & leetcode 18 4sum

    3sum: 1 class Solution { public: vector<vector<int>> threeSum(vector<int>& num ...