https://school.programmers.co.kr/learn/courses/30/lessons/42747
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
풀이 과정
어떤 과학자가 발표한 논문 중, h번 이상 인용된 논문이 h개 이상이면 그 과학자의 H-index를 h라 한다. 논문의 인용 횟수를 줄테니 H-index를 구하라는 문제이다.
논문 인용 횟수를 내림차순 정렬 후, 1부터 시작하는 논문의 index가 논문 인용 횟수보다 커지는 순간의 바로 이전의 index가 어떤 과학자의 H-index가 된다.
20, 19, 18, 17, 16, 15, 11, 5, 4, 3 논문
1 2 3 4 5 6 7 8 9 10 index
위의 예시를 봤을 때, index 8에서 논문 인용 횟수보다 index가 커지므로 H-index는 7이 된다.
소스 코드
def solution(citations):
citations.sort(reverse=True)
index = 1
answer = 0
for citation in citations:
if citation < index:
return index-1
index += 1
return index-1
'알고리즘 문제 풀이 > 프로그래머스' 카테고리의 다른 글
프로그래머스 - 피로도 [파이썬] (0) | 2022.09.21 |
---|---|
프로그래머스 - 카펫 [파이썬] (0) | 2022.09.18 |
프로그래머스 - 주식가격 [파이썬] (0) | 2022.09.16 |
프로그래머스 - 베스트 앨범 [Python] (0) | 2022.08.14 |
프로그래머스 - 카카오프렌즈 컬러링북 [C++] (0) | 2022.08.13 |