[JS] 프로그래머스 - H 인덱스(H-Index)
2020. 6. 24. 16:22ㆍJavascript/알고리즘
1. 문제 설명
문제 설명을 보고 내가 난독증인가 했다. 나만 이해를 못한건가 싶어서 바로 질문하기 버튼을 누르니, 나같은 사람이 정말 많았다. 출제자도 논란이 많은 것을 알고 그런지 모르겠지만, 문제 맨 밑에 H-index에 대한 설명이 담긴 위키링크를 걸어뒀다. 위키에서는 H-index를 다음과 같이 구하라고 써있었다.
-
배열을 내림차순으로 정렬해라.
-
인덱스 번호[배열 인덱스 + 1] <= 배열 요소(배열[인덱스])의 조건을 만족하는 마지막 인덱스가 H-index다.
만약 [3, 1, 4, 2]가 입력으로 들어온다면,
-
[3, 1, 4, 2] => 내림차순 정렬: [4, 3, 2, 1]
-
index + 1 <= array[idx]를 만족하는 마지막 인덱스는 2
-
따라서 H-index는 2가 된다.
2. 프로그램 코드
function solution(citations) {
citations = citations.sort((a,b) => b-a);
let idx = 1;
while(idx <= citations[idx-1])
idx+=1;
return idx-1;
}
'Javascript > 알고리즘' 카테고리의 다른 글
[JS] 플로이드 와샬 알고리즘 (0) | 2020.07.06 |
---|---|
[JS] 프로그래머스 - 큰 수 만들기 (1) | 2020.06.29 |
[JS] 프로그래머스 - 점프와 순간이동 (0) | 2020.06.18 |
[JS] 프로그래머스 - 괄호 변환 (0) | 2020.06.16 |
[JS] 프로그래머스 - 가장 큰 수(레벨 2) (0) | 2020.06.11 |