当前位置: 首页 > news >正文

矩阵加速

矩阵加速

矩阵快速幂

P3390 【模板】矩阵快速幂

题目背景

一个 \(m \times n\)矩阵是一个由 \(m\)\(n\) 列元素排列成的矩形阵列。即形如

\[A = \begin{bmatrix} a_{1 1} & a_{1 2} & \cdots & a_{1 n} \\ a_{2 1} & a_{2 2} & \cdots & a_{2 n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m 1} & a_{m 2} & \cdots & a_{m n} \end{bmatrix} \text{.} \]

本题中认为矩阵中的元素 \(a_{i j}\) 是整数。

两个大小分别为 \(m \times n\)\(n \times p\) 的矩阵 \(A, B\) 相乘的结果为一个大小为 \(m \times p\) 的矩阵。将结果矩阵记作 \(C\),则

\[c_{i j} = \sum_{k = 1}^{n} a_{i k} b_{k j} \text{,\qquad($1 \le i \le m$, $1 \le j \le p$).} \]

而如果 \(A\) 的列数与 \(B\) 的行数不相等,则无法进行乘法。

可以验证,矩阵乘法满足结合律,即 \((A B) C = A (B C)\)

一个大小为 \(n \times n\) 的矩阵 \(A\) 可以与自身进行乘法,得到的仍是大小为 \(n \times n\) 的矩阵,记作 \(A^2 = A \times A\)。进一步地,还可以递归地定义任意高次方 \(A^k = A \times A^{k - 1}\),或称 \(A^k = \underbrace{A \times A \times \cdots \times A}_{k \text{ 次}}\)

特殊地,定义 \(A^0\) 为单位矩阵 \(I = \begin{bmatrix} 1 & 0 & \cdots & 0 \\ 0 & 1 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & 1 \end{bmatrix}\)

题目描述

给定 \(n\times n\) 的矩阵 \(A\),求 \(A^k\)

输入格式

第一行两个整数 \(n,k\)
接下来 \(n\) 行,每行 \(n\) 个整数,第 \(i\) 行的第 \(j\) 的数表示 \(A_{i,j}\)

输出格式

输出 \(A^k\)

\(n\) 行,每行 \(n\) 个数,第 \(i\) 行第 \(j\) 个数表示 \((A^k)_{i,j}\),每个元素对 \(10^9+7\) 取模

输入1

2 1
1 1
1 1

输出1

1 1
1 1

输入2

3 5
1 2 3
4 5 6
7 8 9

输出2

121824 149688 177552
275886 338985 402084
429948 528282 626616
http://www.jsqmd.com/news/424943/

相关文章:

  • println() 与print() 的区别
  • 初中语文网课大揭秘!这几家平台让孩子成绩狂飙 - 品牌测评鉴赏家
  • 小型开发社区:娱乐游戏之后的下一步社交形态
  • 中国个人开发者社区构建的真实阻力与路径选择
  • 中考文言文翻译总丢分?5家宝藏线上机构实测推荐 - 品牌测评鉴赏家
  • 8.ts_内置对象代码雨
  • 开发者社区的“丧尸式“构建策略:从理论到实践
  • 亲测不踩雷!4款初中语文神仙APP,从基础到中考全覆盖(家长必存) - 品牌测评鉴赏家
  • 中考文言文翻译总丢分?5家宝藏线上机构实测推荐,适配不同基础初中生 - 品牌测评鉴赏家
  • PyTorch神经网络组件之Conv2d
  • 中考阅读理解丢分严重?3家靠谱线上机构实测推荐,帮娃高效提分不踩坑 - 品牌测评鉴赏家
  • 看2026上海家装,原木风装修厂家推荐排行来啦,轻奢大平层设计/新中式软装设计/原木风精装房设计,上海家装厂家有哪些 - 品牌推荐师
  • 2026初中语文阅读理解线上辅导大揭秘,选对机构成绩飙升! - 品牌测评鉴赏家
  • 这次终于选对AI论文工具,千笔·专业学术智能体 VS 云笔AI,专科生专属!
  • Task04:字符串
  • 261_尚硅谷_单元测试综合案例
  • 基于YALMIP和CPLEX的Matlab程序实现配电网故障重构模型的二阶锥优化方法,通用性高...
  • 用while循环输出1~1000之间能被5整除的数,并且每行输出3个
  • 实测才敢推!MBA专属降AI神器 —— 千笔·专业降AI率智能体
  • 初中语文提分秘籍!揭秘3家极速提分线上机构 - 品牌测评鉴赏家
  • 干货来了:千笔·降AI率助手,遥遥领先的降AI率工具
  • 2026年灰铁厂家推荐,精密圆棒生产与质量检测认证 - 品牌鉴赏师
  • 小学语文阅读理解辅导哪个平台好?实测5大热门平台,家长闭眼冲不踩坑 - 品牌测评鉴赏家
  • Copilot 模式和 Agent 模式的区别是什么?
  • 论文写不动?千笔ai写作,人气爆表的AI论文网站
  • std::stringstream 超详细讲解(C++ 字符串流)
  • 【ISAC】6G低空经济新突破!协作式ISAC技术实现无人机精准感知与参数估计【附MATLAB代码】
  • 什么是向量数据库?在基于大模型的应用开发中,向量数据库主要解决什么问题?
  • 用for循环输出1~1000之间能被5整除的数,并且每行输出3个
  • 你都了解哪些向量数据库?如何选型?