728x90
문제 : 어떤 과학자가 발표한 논문 n편 중, h번 이상 인용된 논문이 h편 이상이고 나머지 논문이 h번 이하 인용되었다면 h의 최댓값이 이 과학자의 H-Index입니다.
어떤 과학자가 발표한 논문의 인용 횟수를 담은 배열 citations가 매개변수로 주어질 때, 이 과학자의 H-Index를 return 하도록 solution 함수를 작성해주세요.
풀이 : 내림차순 정렬 후, 정렬한 인용 논문 수와 index 값 비교하면 된다.
- 인용 횟수( sorted_cotation[i]) 가 i+1 (현재 논문의 순번)보다 크거나 같은지만 비교하면 된다.
# H-Index 구하는 법
# n편 중, h번 이상 인용된 논문이 h편이상, 나머지는 논문이 h번 이하라면 h최댓값
def solution(citations):
answer=0
sorted_cotation=sorted(citations, reverse=True)
for i in range(len(sorted_cotation)):
if sorted_cotation[i] >=i+1:
answer =i+1
else:
return answer
return answer
문제 출처 : https://school.programmers.co.kr/learn/courses/30/lessons/42747
728x90
'알고리즘' 카테고리의 다른 글
| [프로그래머스] 모의고사 (0) | 2026.03.03 |
|---|---|
| [프로그래머스] 가장 큰 수 (0) | 2026.02.26 |
| [프로그래머스] 주식 가격 (0) | 2026.02.25 |
| [프로그래머스] 프로세스 (0) | 2026.02.23 |
| [프로그래머스] 전화번호 목록 (0) | 2026.02.20 |