蓝桥杯Python B组练习——矩阵乘法

一、题目

问题描述

  给定一个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

python代码与解析

A,B,C 是三个矩阵,若 A × B = C ,矩阵C的第i行第j列元素=矩阵A的第i行元素与矩阵B的第j列对应元素乘积之和。

例如:

二、思路

主要就是要知道线代里面矩阵乘法的算法,然后定义一个计算矩形幂的函数,把输入的参数传进去调用即可。

三、Python代码

复制代码
n,m = map(int,input().split())
ls=[[int(i) for i in input().split()] for i in range(n)]

def juzhen(n,ls,ls2):
    ls1=[[0 for i in range(n)] for i in range(n)]
    for i in range(n):
        for j in range(n):
            for k in range(n):
                ls1[i][j]+=ls[i][k]*ls2[k][j]
    return ls1

if m>0:
    ls_ans = ls
    for i in range(m-1):
        ls=juzhen(n,ls,ls_ans)
else:
    for i in range(n):
        ls[i][i]=1

for i in range(n):
    for j in range(n):
        print(ls[i][j],end=" ")
    print()
相关推荐
蒸鱼Yuzheng2 小时前
设备端性能工件可靠导出:断点续传、哈希、manifest 与失败恢复
android·自动化测试·python·adb·数据完整性
Jmyd01233 小时前
手持激光三维扫描仪技术解析:三角测量数据链路、材质适配矩阵与点云处理流程
数码相机·矩阵·材质·三维数字化
圆圆讲门店3 小时前
挑选同城获客服务机构时需要考量的核心因素都有哪些?
大数据·网络·人工智能·python
傻啦嘿哟4 小时前
Python的默认参数把我坑惨了,原来写[]和写None的区别这么大
开发语言·python·机器学习
微小冷4 小时前
Python凸优化cvxpy初步
python·机器人·凸优化·数学规划·cvxpy
在世修行4 小时前
干货:显式映射 vs 自动判据
python·插件
xzal124 小时前
Python之简单理解栈和队列
python
lupai4 小时前
维修保养记录精准版 API 对接实战指南
数据库·python
水水不水啊5 小时前
告别杂乱的调试窗口:我用 Python + WebView 写了一个现代化串口助手
python·测试工具·嵌入式·嵌入式开发·串口调试·串口助手
三水写代码5 小时前
手写一个 Claude Code(1):从 Agent Loop 到工具、权限、Hooks 与任务规划
python·ai编程·claude·ai agent·claudecode