[Middler] H-Index
오늘의 회고
h-index에 대한 설명이 어려워서 이해가 안갔다. '논문 n편 중, h번 이상 인용된 논문이 h편 이상이고 나머지 논문이 h번 이하 인용되었다면 h의 최댓값이 h-index'... 사실 이글을 열댓번은 읽은 것 같은데, 아직도 정확하게 이해가 되지 않는 문장이다. 도저히 문제의 해결 방향을 잡을 수가 없어서 몇 번 풀다가 다른 사람들의 풀이를 참조했다.
내 생각
우선 문제를 접해보았으니, h-index에 대해서 기억을 해두고 있어야 겠다.
- H-Index란?
- 가장 많이 인용된 논문순으로 정렬한 후 피 인용수가 논문수와 같아지거나 작아지기 시작하는 숫자
때문에 아래와 같이 풀이할 수 있다.
- citations 리스트를 내림차순으로 정렬
- 논문수가 피인용수보다 작거나 같다면 h-index 를 갱신한다.
문제 풀이
1. python
def solution(citations):
answer = 0
# 최댓값을 구하기 위해 소트
citations.sort(reverse=True)
# h의 최댓값 = h-index
# h의 최댓값 = n편 중, h번 이상 인용된 논문이 h편 이상이고 나머지 논문이 h번 이하 인용되었을 때
for i in range(len(citations)) :
h = citations[i]
if h >= i+1 :
answer = i+1
return answer
2. javascript
- 파이썬과 동일합니다.
[Challenger] 뉴스 전하기
다시 풀어보기..
'TIL' 카테고리의 다른 글
99클럽 TIL (240808) (0) | 2024.08.08 |
---|---|
99클럽 TIL (240804) (0) | 2024.08.04 |
99클럽 11일차 TIL (240801) (0) | 2024.08.01 |
99클럽 10일차 TIL (240731) (0) | 2024.07.31 |
99클럽 9일차 TIL (240730) (0) | 2024.07.30 |