26 lines
787 B
Python
26 lines
787 B
Python
# HumanEval/69
|
|
# Loki Mode Multi-Agent Solution
|
|
# Attempts: 1
|
|
# Passed: True
|
|
|
|
def search(lst):
|
|
'''
|
|
You are given a non-empty list of positive integers. Return the greatest integer that is greater than
|
|
zero, and has a frequency greater than or equal to the value of the integer itself.
|
|
The frequency of an integer is the number of times it appears in the list.
|
|
If no such a value exist, return -1.
|
|
Examples:
|
|
search([4, 1, 2, 2, 3, 1]) == 2
|
|
search([1, 2, 2, 3, 3, 3, 4, 4, 4]) == 3
|
|
search([5, 5, 4, 4, 4]) == -1
|
|
'''
|
|
from collections import Counter
|
|
|
|
freq = Counter(lst)
|
|
result = -1
|
|
|
|
for num, count in freq.items():
|
|
if num > 0 and count >= num:
|
|
result = max(result, num)
|
|
|
|
return result |