본문 바로가기
Programming/코딩 문제 풀이

[프로그래머스 Lv.2] H-Index (파이썬 풀이)

by 삼SAM 2022. 10. 28.

문제 링크

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

[풀이]

* 논문별 인용 횟수 배열(citations)을 내림차순 정렬한 배열의 인덱스는 해당 논문의 인용 횟수 이상의 인용 횟수를 가진 논문의 수와 같다.

 

  1. citations을 내림차순 정렬하여 인덱스 순서대로 인덱스 값이 인용 횟수보다 크거나 같은지 확인한다.
  2. 인덱스 값이 인용 횟수보다 큰 경우를 발견하면 해당 인덱스를 반환한다.
  3. 발견하지 못한 경우 전체 논문의 수를 반환한다.

 

[코드]

def solution(citations):
    for i, j in enumerate(sorted(citations, reverse=True)):
        if i >= j:
            return i
    return len(citations)

 

댓글