基础练习-BASIC-17 矩阵相乘
2018-03-24 11:06
344 查看
问题描述 给定一个N阶矩阵A,输出A的M次幂(M是非负整数)
例如:
A =
1 2
3 4
A的2次幂
7 10
15 22输入格式 第一行是一个正整数N、M(1<=N<=30, 0<=M<=5),表示矩阵A的阶数和要求的幂数
接下来N行,每行N个绝对值不超过10的非负整数,描述矩阵A的值输出格式 输出共N行,每行N个整数,表示A的M次幂所对应的矩阵。相邻的数之间用一个空格隔开样例输入2 2
1 2
3 4样例输出7 10
15 22
思路:当m=0时,则斜对角线为1,其余为0
当m=1时,则为原来的矩阵
当m>1时,则用矩阵乘法的规则相乘
例如:
A =
1 2
3 4
A的2次幂
7 10
15 22输入格式 第一行是一个正整数N、M(1<=N<=30, 0<=M<=5),表示矩阵A的阶数和要求的幂数
接下来N行,每行N个绝对值不超过10的非负整数,描述矩阵A的值输出格式 输出共N行,每行N个整数,表示A的M次幂所对应的矩阵。相邻的数之间用一个空格隔开样例输入2 2
1 2
3 4样例输出7 10
15 22
思路:当m=0时,则斜对角线为1,其余为0
当m=1时,则为原来的矩阵
当m>1时,则用矩阵乘法的规则相乘
package net.jichu; import java.util.Scanner; /** * * @author 王巍 * 基础练习 十六进制转八进制 * */ public class Main1 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int m = sc.nextInt(); long[][] a = new long ; a343 long[][] b = new long ; int i, j; for (i = 0; i < n; i++) for (j = 0; j < n; j++) b[i][j] = a[i][j] = sc.nextLong(); if (m == 0) for (i = 0; i < n; i++) { for (j = 0; j < n; j++) { if (i == j) System.out.print(1 + " "); else System.out.print(0 + " "); } System.out.println(); } else if (m == 1) for (i = 0; i < n; i++) { for (j = 0; j < n; j++) System.out.print(a[i][j] + " "); System.out.println(); } else { for (int z = 1; z < m; z++) { long[][] tmp = new long ; for (i = 0; i < n; i++) { for (j = 0; j < n; j++) { long add = 0; for (int y = 0; y < n; y++) { add += a[i][y] * b[y][j]; } tmp[i][j] = add; //存到数组里 } } b = tmp; } for (i = 0; i < n; i++) { for (j = 0; j < n; j++) System.out.print(b[i][j] + " "); System.out.println(); } } } }
相关文章推荐
- 蓝桥杯 BASIC-17 基础练习 矩阵乘法
- 蓝桥杯 BASIC-17 基础练习 矩阵乘法
- 基础练习 BASIC-17 矩阵乘法
- 蓝桥杯 17 基础练习 矩阵乘法
- 蓝桥杯 BASIC-18 基础练习 矩形面积交
- 【备战蓝桥杯】【递归】【C语言】【BASIC-21基础练习 Sine之舞】
- 蓝桥杯 基础练习之BASIC-5查找整数(vetor实现)
- 蓝桥杯-基础练习之十六进制转十进制——BASIC-11
- 基础练习 BASIC-19 完美的代价
- 基础练习 BASIC-22 FJ的字符串
- 蓝桥杯--基础练习之BASIC-3 字母图形
- 蓝桥杯 BASIC-24 基础练习 龟兔赛跑预测
- 蓝桥杯 BASIC-11 基础练习 十六进制转十进制
- 蓝桥杯-基础练习-BASIC-6-杨辉三角形
- 基础练习 矩阵乘法
- Java基本功练习九(多维数组强化一[五子棋、九个正面和背面、矩阵相乘])
- 蓝桥杯 BASIC-16 基础练习 分解质因数
- 蓝桥杯-基础练习之十六进制转八进制——BASIC-12
- TensorFLow 基础 矩阵相乘相加 线性回归 手写字体逻辑回归 神经网络 tensorboard 显示 网络结构 和 优化记录
- 蓝桥杯 BASIC-5 基础练习 查找整数