矩阵乘法及矩阵快速幂运算
2018-02-15 10:04
260 查看
设矩阵为n*n(n<N)的矩阵,代码如下:
const int N = 100; void matmul(long long a[] , long long b[] , long long n) { long long temp ; memset(temp, 0, sizeof(temp)); for (long long i = 1; i <= n; i++) for (long long j = 1; j <= n; j++) for (long long k = 1; k <= n; k++) temp[i][j] += a[i][k] * b[k][j]; for (long long i = 1; i <= n; i++) for (long long j = 1; j <= n; j++) a[i][j] = temp[i][j]; } void quick_pow(long long a[] , long long n) { long long ans ; for (int i = 0; i < N; i++) for (int j = 0; j < N; j++) ans[i][j] = 1; while (n != 0) { if (n & 1)matmul(ans, a, N); n /= 2; matmul(a, a, N); } for (int i = 0; i < N; i++) for (int j = 0; j < N; j++) a[i][j] = ans[i][j]; return; }
相关文章推荐
- 【HDOJ5950】Recursive sequence(矩阵乘法,快速幂)
- 继递归递推求斐波那契后的另一种奇妙方法---矩阵乘法+快速幂运算
- [WIKIOI 1250]Fibonacci数列(数论+数学+矩阵乘法+二分快速幂)
- CUDA学习--矩阵乘法的并行运算
- 矩阵乘法运算test
- 稀疏矩阵的各种基本运算并加法乘法
- 7. 稀疏矩阵的乘法运算
- 线性代数·矩阵的加法减法乘法运算简单实现
- 矩阵运算(加,减,乘,除,快速幂)
- ZCMU-1618-骨牌覆盖(矩阵乘法+快速幂)
- 利用CUDA的矩阵乘法1 <利用 Kahan's Summation Formula 来提高CUDA 的浮点数运算精确度>
- poj 3613Cow Relays (矩阵乘法 快速幂)
- 卷积运算转换为矩阵乘法
- 稀疏矩阵的加减法、乘法、求逆运算
- 矩阵的乘法运算
- 编程基本功——矩阵的乘法运算
- java第七周封装一类对矩阵操作的对象,该类对象能够对矩阵进行运算,如矩阵中数据的位置变换功能、矩阵的加法功能、矩阵的乘法功能。
- ZZY的宠物(矩阵运算+快速幂)
- 使用一维数组和二维数组来存储矩阵并进行乘法运算
- 数据结构之矩阵的乘法运算