코딩 테스트/프로그래머스 level2

H-Index

fullfish 2022. 9. 10. 02:37

코드

function solution(citations) {
  citations = citations.sort((a, b) => b - a);
  for (let i = 0; i < citations.length; i++) {
    if (i >= citations[i]) return i;
  }
  return citations.length
}

문제가 이상해서 삽질 한참함

처음 문제대로 쓴 코드

function solution2(citations) {
  let H = 0;
  citations = citations.sort((a, b) => a - b);
  console.log(citations);
  for (let i = 0; i < citations.length; i++) {
    let overNum = citations.filter((ele) => ele >= citations[i]).length;
    if (overNum >= citations[i]) H = overNum;
    else return H;
  }
}

그런데 문제가 이상해서 찾아보니까

h-index를 구하기 위해서는 배열을 내림차순으로 바꿔야합니다.
그리고 각각의 인덱스와 인덱스에 해당하는 값을 비교해 
인덱스가 인덱스에 해당하는 값보다 크거나 같으면 그 값이 h-index입니다.

라고 한다

'코딩 테스트 > 프로그래머스 level2' 카테고리의 다른 글

튜플  (0) 2022.09.11
괄호 회전하기  (0) 2022.09.10
점프와 순간 이동  (0) 2022.09.10
[1차] 캐시  (0) 2022.09.10
멀리 뛰기  (0) 2022.09.10