【模板】矩阵快速幂 洛谷 P3390

题目背景
矩阵快速幂

题目描述
给定 n\times nn×n 的矩阵 AA,求 A^kA
k

输入格式
第一行两个整数 n,kn,k 接下来 nn 行,每行 nn 个整数,第 ii 行的第 jj 的数表示 A_{i,j}A
i,j

输出格式
输出 A^kA
k

共 nn 行,每行 nn 个数,第 ii 行第 jj 个数表示 (A^k)_{i,j}(A
k
)
i,j

,每个元素对 10^9+710
9
+7 取模。

输入输出样例
输入 #1复制
2 1
1 1
1 1
输出 #1复制
1 1
1 1
说明/提示
【数据范围】
对于 100%100% 的数据:1\le n \le 1001≤n≤100,0 \le k \le 10^{12}0≤k≤10
12
, |A_{i,j}| \le 1000∣A
i,j

∣≤1000

模板题,没什么特别的。注意一下取余和long long就好了。只是在快速幂的基础上重新定义了矩阵乘法和base,照猫画虎即可。

#include <iostream>
#include <cstdio>
#include <algorithm>
#include <vector>
#include <cstring>
#include <stack>
#include <cmath>
#include <string>
using namespace std;
typedef long long ll ;
typedef vector<vector<ll> > mat;
typedef vector<ll>  vec;
using namespace std;
c
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值