728x90
안녕하세요! 오늘도 알고리즘 연습은 계속됩니다.
프로그래머스 고득점Kit 정렬 마지막 level H-Index 문제를 풀었습니다.
생각보다 금방 풀었는데요,
문제 파트가 정렬이라 정렬이 핵심이라는 힌트는 처음부터 얻어서 빨리 풀었다고 생각합니다.
제 접근 방법은 다음과 같습니다.
10,000회라는 최대 인용 횟수가 있으니 10,000회 안에서 루프를 돕니다.
하나씩 순차적으로 증가하는 이 루프의 인덱스는 추정 인용 횟수입니다.
예를 들어봅시다.
[0, 1, 3, 5, 6] 이 있을 때
0회 인용되었다고 가정 -> 인용된 논문 5개
1회 인용되었다고 가정 -> 인용된 논문 5-1 = 4개
2회 인용되었다고 가정 -> 인용된 논문 : 5-2 = 3개
3회 인용되었다고 가정 -> 인용된 논문 : 5-2 = 3개
4회 인용되었다고 가정 -> 인용된 논문 : 5-2 = 3개
어느 순간 가정된 수보다 인용된 논문이 적은 때가 발생하고 그 직전의 값이 H-Index 값이 됩니다.
이유는 다음과 같습니다.
H-Index는 h번 이상 인용된 논문이 h편 이상이어야 합니다.
그럼 인용되었다고 가정하는 수는 항상 인용된 논문의 수보다 같거나 작어야 합니다.
좀 장황했는데요, 정답은 맞혔으나 더 개선할 여지가 없는지 알기 위해 다른 분들의 풀이도 한번 보았습니다.
접근방법은 비슷한데 코드의 표현력이 많이 다르네요.
오늘도 갈 길이 멉니다... 흡
728x90
'츄Log > 알고리즘 연습장' 카테고리의 다른 글
연습#8 의상 (1) | 2023.12.08 |
---|---|
연습#7 전화번호 목록 (0) | 2023.12.07 |
연습#5 가장 큰 수 (1) | 2023.12.06 |
연습#4 폰켓몬 (1) | 2023.12.05 |
연습#3 완주하지 못한 선수 (1) | 2023.12.04 |