csp 202104-1 python解法(100分)
- 首先看题:
- 这里输入第一行的第一个数代表矩阵A的行数,第二个数代表列数,第三个数可以理解为矩阵中出现的最大的数减1
- 接收输入的数据:
n, m, l = map(int, input().split()) matrix = [] for _ in range(n): matrix.append(list(map(int, input().split()))) result = [0]*l #创建l大小的一个数组
- 解题思路:每当[0,l)的灰度值出现一次,我们就在该索引处加1
例如第一个样例:我创建了一个大小为16,初值为0的列表。0出现一次,li[0] += 1;1出现一次,li[1] += 1等等。
代码如下:
for i in matrix: for j in i: result[j] += 1
- 最终的代码:
n, m, l = map(int, input().split()) matrix = [] for _ in range(n): matrix.append(list(map(int, input().split()))) result = [0]*l for i in matrix: for j in i: result[j] += 1 for i in result: print(i, end=' ')