题解 | #小欧的数组修改#(Python3)
小欧的数组修改
https://www.nowcoder.com/practice/9d57195bcec9415e9d12db846545ee0f
N = 100000 def func(n, arr): tmp = [0]*N ans = 0 # 临时数组记录每个元素出现的次数 for i in range(0, n): tmp[arr[i]] += 1 # 找到出现最多的次数 # +1防止有两个数次数相同必须修改 # 只有一个数次数最多是可以不修改的,这里也一并改了 for i in range(0, N): ans = max(ans, min(n, tmp[i]+1)) return ans while True: try: n = int(input()) arr = list(map(int, input().split())) result = func(n, arr) print(result) except EOFError: break#15天刷题#