[Programmers] H-Index
🎈문제
https://programmers.co.kr/learn/courses/30/lessons/42747
💬설명
- 문제가 조금 헷갈리게 적혀있어서 이해하는데 시간이 오래 걸렸다.
- 포인트: h번이상 인용된 논문의 개수가 h개 이상인 것 중 최대 h값 선택
- 예시를 보면 이해가 된다.
- [3, 5, 6, 1, 0]이 있을 때
내림차순으로 정렬하면 [6, 5, 3, 1, 0]이다.
index도 함께 표시하면
[6, 5, 3, 1, 0]
0, 1, 2, 3, 4
인데
여기서 얘기하는 조건을 만족 시키려면
h번 이상 인용되는 논문이 h개 이상,
즉, index >= citation이다.
그러니까 index값이 결국 h번이상 인용되는 논문 개수니까 (내림차순으로 정렬했기 때문)
가장 처음 만나는 '조건을 만족시키는 h값'이 답이 되는 것이다.
👩💻코드
def solution(citations):
citations.sort(reverse=True)
for idx , citation in enumerate(citations):
if idx >= citation:
return idx
return len(citations)
👉참고
728x90
반응형
'CS > Algorithm 문제' 카테고리의 다른 글
[BaekJoon] 백준 21608번 상어 초등학교 (0) | 2021.10.14 |
---|---|
[Programmers] 가장 큰 수 (0) | 2021.10.13 |
[Programmers] K번째수 (0) | 2021.10.12 |
[Programmers] 이중우선순위큐 (0) | 2021.10.12 |
[Programmers] 디스크 컨트롤러 (0) | 2021.10.12 |