题解 | #小欧的数组修改#(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天刷题#
查看9道真题和解析


