소스 코드

def solution(citations):
    answer = 0
    
    citations.sort()
    
    num = len(citations)
    
    for q in range(num):
        
        if min(num - q, citations[q]) > answer:
            answer = min(num - q, citations[q])   
    
    return answer

 


해결 방법

1. h번 이상 인용된 논문이 h편 이상이어야 함

=> citations에 없는 숫자를 찾아야할 수도 있음

=> 1) h번 이상 인용된 논문(citations의 값)과 2) h편 이상(n편의 논문 - citations의 index 값) 중 최소 값을 찾으면 됨

ex) citations = [0,0,4,4,5] 가정하면 min(0,5), min(0,4), min(4,3) 순으로 계산함, answer = 3


느낀 점

 

 

ps. 개인적인 코드와 코드를 작성의 이유를 적은 것입니다.

 

오류적절치 않은 문법이 존재할 수 있으며, 다른 분들께는 굉장히 비효율적인 방법으로 여겨질 수 있습니다.

 

혹시 개선 사항, 오류 및 문제에 대한 수정 사항 등을 댓글로 남겨주신다면 감사한 마음으로 배우고 수정하겠습니다.