- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想编写一个函数,给定两个整数“n”和“p”,它生成所有 n 阶可逆矩阵,其中元素来自 {0,1,...,p-1}。我有以下代码:
import itertools
import numpy as np
def invertible_matrices(n, p):
invertibleMatrices = set()
# generates all the possible matrices
x = [y for y in range(p)]
a = [j for j in itertools.product(x, repeat=n)]
b = {k for k in itertools.product(a, repeat=n)}
for each in b:
if np.linalg.det(each) != 0:
invertibleMatrices.add(each)
return invertibleMatrices
对于 n=2
和 p=2
工作正常,但对于 n=2
和 p=3
> 我得到 50
,而答案是 48
。任何帮助将不胜感激。
p.s:如果你熟悉群论,我正在尝试找到 GL(n, p) 的所有元素(具有 p 个元素的有限域上的一般线性群)
最佳答案
我猜你想要模 p 的行列式(这是 GL(n,p) 上下文中的行列式,即在具有 p 元素的有限域上)。
if not np.isclose((np.linalg.det(each)+1)%p,1):
invertibleMatrices.add(each)
注意:+1 是为了避免出现小的数字错误。
关于python - 找到所有可逆方阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62424142/
有人知道符合上述所有条件的算法吗?我需要指定一个种子编号,以及我希望输出数字落入的范围(这也是输入数字所在的范围)。这个函数还需要有一个反向操作的对应物。 例如: 我传递了种子 5 和范围 5-35,
如何使递归重命名操作(Linux,使用 python)可逆? 我想在Linux下使用python编写一个程序,该程序执行以下任务:批量递归重命名文件夹中的所有文件,如果文件名有子字符串X,则重命名为Y
我的数组中有三种颜色。最初,我被要求创建一个函数,该函数只需要第一个函数并将其附加到末尾或执行相反的操作,因此我创建了这个函数: // Get our colours var colours = sc
当我错误地删除了contenteditable div中的一些文本时,我可以使用Ctrl + z将其反转。 但是在我使用 javascript 做了一些改变之后。我无法使用 Ctrl + z 返回到之
我有一个 PHP 网络服务,它当前返回一个 zip 存档作为其唯一输出。我正在使用 file_get_contents 从磁盘读取 zip 存档并将其作为响应的主体发回。 我希望它以 JSON 格式返
让我解释一下:在我的用例中,系统为我提供了很多大小可以变化的字符串(字符数;长度),有时它可能非常大!问题是我必须将这个字符串保存在“SQL Server”数据库表的列中,坏消息是我不允许在这个数据库
我是一名优秀的程序员,十分优秀!