5 4 4 2
1 2 3 4
4 3 2 1
h = 3
def solution(citations):
citations.sort(reverse=True)
idx = 0
h = citations[0]
for h in range(citations[0], -1, -1):
while idx < len(citations) and h <= citations[idx]:
idx += 1
if h <= idx:
return h
# 지금 몇 편이 남았는가? -> 모든 인용횟수가 남은 논문 수보다 큰가?
def solution(citations):
citations = sorted(citations)
l = len(citations)
for i in range(l):
if citations[i] >= l-i:
return l-i
return 0
def solution(citations):
citations.sort(reverse=True)
answer = max(map(min, enumerate(citations, start=1)))
return answer
‘인용수’보다 ‘논문수’에 초점을 맞춘 풀이가 더 깔끔하다.