python 随机生成各列元素和为1的0-1矩阵,每列只有一个1,其他都为0,且最后一行必须至少有一个0,不能出现
[[0,0,0,0],
[0,0,0,0],
[1,1,1,1]]这种情况。
import numpy as np
n = int(input())
m = 5
a = np.eye(n, m)[np.random.randint(0, m, n)]
a = a.T
# a[-1:] = 1
if(0 not in a[-1:]):
# print('test')
# print(a[np.random.randint(0, n):])
# print()
# print(a)
# print()
a[np.random.randint(0, n):] = np.array([1]*(n-1)+[0])
print(a)