【日常学习】codevs1287 矩阵乘法题解
转载请注明出处 [ametake版权全部]http://blog.csdn.net/ametake欢迎来看、
先上题目
小明近期在为线性代数而头疼,线性代数确实非常抽象(也非常无聊),可惜他的老师正在讲这矩阵乘法这一段内容。
当然,小明上课打瞌睡也没问题,但线性代数的习题但是非常可怕的。小明希望你来帮他完毕这个任务。
如今给你一个ai行aj列的矩阵和一个bi行bj列的矩阵,要你求出他们相乘的积(当然也是矩阵)。
(输入数据保证aj=bi,不须要推断)
矩阵乘法的定义:
1. 矩阵A乘以B的时候。必需要求A的列数=B的行数,否则无法进行乘法运算。
因此矩阵乘法也不满足交换律。
2. 设A是X*N的矩阵。B是N*Y的矩阵,用A的每一行乘以B的每一列,得到一个X*Y的矩阵。对于某一行乘以某一列的运算,我们称之为向量运算,即相应位置的每一个数字相乘之后求和。
写为公式及:
C[i,j] = Sigma(A[i,k] * B[k,j])
输入文件共同拥有ai+bi+2行,而且输入的全部数为整数(long long范围内)。
第1行:ai 和 aj
第2~ai+2行:矩阵a的全部元素
第ai+3行:bi 和 bj
第ai+3~ai+bi+3行:矩阵b的全部元素
输出矩阵a乘矩阵b的积(矩阵c)
2 2
12 23
45 56
2 2
78 89
45 56
1971 2356
6030 7141
矩阵大小<=200*200
题目本身很easy,在这里仅仅是要说一下矩阵乘法的应用。
昨天在诸城一中夏令营听了高天宇前辈的解说,矩阵乘法能够和倍增思想结合将反复计算的乘法提升到对数级别的复杂度。
因为矩阵乘法满足结合律,因此求得转移矩阵后,能够先对转移矩阵做类似高速幂的翻倍,再与原矩阵相乘,能够极大的提高执行效率。
至于怎么构造转移矩阵= =机房快关门了也来不及说了= =假设有谁(预计没人)看到这篇文章想知道(预计还没人)的话能够私信我单独交流= =
事实上主要是想吐槽几句= =
1.codevs昨天编译器各种故障是怎么回事三个编译器全挂了
2.codevs比赛juruo【谷歌输入法竟打不出来= =】仅仅做出第一个题并且仅仅过了例子并且第一遍还写错了并且还稀里糊涂调了一个小时= =
3.codevs第一次月赛怎么也得支持一下只是好麻烦啊= =感觉NOIP无力了ORZ
4.山东夏令营今年难度总体减少了一个B格= =什么情况这节奏严重不正确= =目測不是省队爷低估了我们水平就是国家队爷高估了我们水平= =另,WYH神犇表示做老师非常累= =我们听神犇您的课也非常累= =
5.这几天蒙受GTY神犇光环,树状数组线段树RMQ矩阵乘法ST各种新技能···还没get= =但各种开眼= =
6.GTY神犇好萌~被WYH神犇各种无视(举了N词手都被54,我的存在感一定在上午用光了OTZ)
7.下午课各种悲了个剧= =想听的启示式搜索什么的各种被删= =重归基础二难度,隔壁LOI安之若素姑娘恐怕要哭晕在厕所了= =(打脸)
8.预祝TY君和CA队长诸位面基愉快~
9.见到洵二二好开心,XBOI新来的姑娘好萌。ZCYZ去年一群花姑娘不见了来的这仅仅也好萌,山师附中的神犇们好沉默不知什么冤什么仇= =迄今各种愉快。有星空就更好了
10.明天也还要好好学习,不知不觉暑假过半了啊= =看到诸城一中1323孩子们这么努力我们也要加油啊= =
11.我十二点半火车回到家第二天一大早爬到诸城easy吗= =
【日常学习】codevs1287 矩阵乘法题解的更多相关文章
- [codevs1287]矩阵乘法
题目描述 Description 小明最近在为线性代数而头疼,线性代数确实很抽象(也很无聊),可惜他的老师正在讲这矩阵乘法这一段内容.当然,小明上课打瞌睡也没问题,但线性代数的习题可是很可怕的.小明希 ...
- [学习笔记]矩阵乘法及其优化dp
1.定义: $c[i][j]=\sum a[i][k]\times b[k][j]$ 所以矩阵乘法有条件,(n*m)*(m*p)=n*p 即第一个矩阵的列数等于第二个矩阵的行数,否则没有意义. 2.结 ...
- BZOJ2738:矩阵乘法——题解
http://www.lydsy.com/JudgeOnline/problem.php?id=2738 Description 给你一个N*N的矩阵,不用算矩阵乘法,但是每次询问一个子矩形的第K小数 ...
- LuoguB2105 矩阵乘法 题解
Content 给定一个 \(n\times m\) 的矩阵 \(A\) 和一个 \(m\times k\) 的矩阵 \(B\),求两个矩阵相乘得到的矩阵. \(n\times m\) 的矩阵 \(A ...
- Java实现 蓝桥杯 算法提高 矩阵乘法(暴力)
试题 算法提高 矩阵乘法 问题描述 小明最近刚刚学习了矩阵乘法,但是他计算的速度太慢,于是他希望你能帮他写一个矩阵乘法的运算器. 输入格式 输入的第一行包含三个正整数N,M,K,表示一个NM的矩阵乘以 ...
- OpenGL学习进程(12)第九课:矩阵乘法实现3D变换
本节是OpenGL学习的第九个课时,下面将详细介绍OpenGL的多种3D变换和如何操作矩阵堆栈. (1)3D变换: OpenGL中绘制3D世界的空间变换包括:模型变换.视图变换.投影变换和视口 ...
- 学习心得:《十个利用矩阵乘法解决的经典题目》from Matrix67
本文来自:http://www.matrix67.com/blog/archives/tag/poj大牛的博文学习学习 节选如下部分:矩阵乘法的两个重要性质:一,矩阵乘法不满足交换律:二,矩阵乘法满足 ...
- P1962 斐波那契数列-题解(矩阵乘法扩展)
https://www.luogu.org/problemnew/show/P1962(题目传送) n的范围很大,显然用普通O(N)的递推求F(n)铁定超时了.这里介绍一种用矩阵快速幂实现的解法: 首 ...
- [模板][题解][Luogu1939]矩阵乘法加速递推(详解)
题目传送门 题目大意:计算数列a的第n项,其中: \[a[1] = a[2] = a[3] = 1\] \[a[i] = a[i-3] + a[i - 1]\] \[(n ≤ 2 \times 10^ ...
随机推荐
- 记录xerces使用(VS2017 C++)
1.编译xerces,获得dll文件和lib文件 2.将dll文件和lib文件拷贝到使用xerces的工程目录里面去 3.配置VS2017 C/C++ -> All Options --&g ...
- (7) 将tomcat HTTP连接器启动在80端口(jsvc使用详解)
让tomcat在80端口上运行 法一: 修改连接器的端口8080为80 <Connector port="8080" protocol="HTTP/1.1" ...
- 一个关于vue+mysql+express的全栈项目(四)------ sequelize中部分解释
一.模型的引入 引入db.js const sequelize = require('./db') sequelize本身就是一个对象,他提供了众多的方法, const account = seque ...
- Java自动生成asmx的webservice代码
第一种方式:针对CXF自动生成的代码对响应类大小写区别问题,可以使用此方法. 工具为Eclipse. 新建Web Service Client. 输入地址点击finish即可自动生成. 调用方式: p ...
- 让你系统的了解shell
当你在进行登录时,系统会检查的文档:1. /etc/profile:首先,系统会检查这个文件,以定义如下这些变量:PATH.USER.LOGNAME.MAIL.HOSTNAME.HISTSIZE.IN ...
- JS获取粘贴内容
http://classjs.com/2013/03/05/js%E8%8E%B7%E5%8F%96%E7%B2%98%E8%B4%B4%E5%86%85%E5%AE%B9/ 思路:在编辑环境中,粘贴 ...
- 使用JQuery.slideBox实现图片滚动效果
1.下载JQuery.slideBox和jquery插件,并引用 <link href="css/jquery.slideBox.css" rel="stylesh ...
- 大数据学习——redis安装
用源码工程来编译安装 / 到官网下载最新stable版 / 解压源码并进入目录 .tar.gz -C ./redis-src/ / make 如果报错提示缺少gcc,则安装gcc : yum inst ...
- [luoguP2129] L国的战斗续之多路出击(模拟 || 矩阵)
传送门 1.模拟 easy #include <cstdio> #define N 500001 int n, m; int X[N], Y[N], x[N], y[N], a = 1, ...
- js中trim函数的简单实现
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <hea ...