关键在于对题目进行逻辑分析,根据分析可知:
1、当两列元素或元素构成的字符串相同时,才能通过行元素反转颠倒变换,使得两列元素相同。
2、题目寻找的最大相同列或最大相同列元素字符串数量。
n, m = map(int, input().split())
matrix = [input() for _ in range(n)]#输入数据
def getresult(n,m,matrix):
dic = dict()#字典存储列构成的字符串,列字符串:数量
for i in range(m):
s = ''
for j in range(n):
s += matrix[j][i]
dic[s] = dic.setdefault(s,0)+1#如果列字符串已存在则加一,否则列表添加列字符串元素,初始值为零并加一
return sorted(dic.values())[-1]#返回最相同的列字符串数量
print(getresult(n,m,matrix))



京公网安备 11010502036488号