解法一
- 初始化二元数组
- for rows; [0] * col 添加到数组中
rows, 然后data = rows * row, 这个不好,会出现引用复制的问题,修改一个,会带着修改多个地方[ [0] * col for i in range(row)]
import numpy N = numpy.zeros([10, 10])
- 暴力解
- 对应的行都增加1
- 对应的列都增加1
- 判断是否为奇数的方法
-
num & 1
如果为1,则为奇数; 否则为偶数
解法二
- 针对[i,j]的数值,遍历indices,是否命中
- 命中加上对应数值,判断是否奇数,统计
问题
result = 0
row = [0] * m
data = []
for index in range(n):
data.append(row)
for indice in indices:
row = indice[0]
col = indice[1]
for val in range(m):
data[row][val] += 1 #这里+1,会把其他几行都进行+1,因为初始化的时候,使用相同的引用
for val in range(n):
data[val][col] += 1
网友评论