任务描述
在一组空格分隔的自然数中,有些数出现的次数与该数相等,找出符合这个特征的数,并输出其中的最大数。如果不存在这样的数,则输出-1。
输入格式
在一行中输入若干个自然数,数字之间用空格分隔
输出格式
输出满足上述条件的数,如果不存在这样的数,则输出-1
示例 1
输入: 3 3 3 8 8 8 8 8 8 8 8 1 4 5 6 7
输出: 8
示例 2
输入: 1 1 2 3
输出: -1
try:
ls=list(map(int,input().split(" ")))
except:
ls=list(map(int,input().split(" ")))
dic={}
set_ls=list(set(ls))
for i in set_ls:
if i==ls.count(i):
dic[i]=ls.count(i)
if len(dic)!=0:
print(dic[max(list(dic.keys()))])
else:
print(-1)
(我知道代码开头有点怪,但是不能怪我,出题人脑子可能有点那啥,给的测试集有点毛病,随便写了个捕获异常语句应付一下)