프로그래머스 H-Index 자바스크립트

Jinny·2일 전
0
  • 날짜 / 주차-누적 횟수: 2025.02.06(목) / 1주차-2회
  • 사이트 이름: 프로그래머스
  • 사용 언어: JavaScript
  • 문제 고유 번호 및 레벨: 42747 / Lev 2
  • 최적 풀이 방법:
    function solution(citations) {
    	citations.sort((a, b) => b - a);
    	
    	for (let i = 0; i < citations.length; i++) {
    		if (i >= citations[i]) return i;
    	}
    	
    	return citations.length;
    • 입력 받은 배열을 내림차순으로 정렬한다.
    • 일반 for 문 반복문으로 입력받은 배열(각 논문의 인용 횟수)의 요소를 하나씩 순회한다.
      • 인덱스가 각 논문의 인용 횟수보다 크거나 같을 때 인덱스를 return 한다.
    • 결과가 없다면 입력 받은 배열의 길이를 return한다.
      • for 문을 끝까지 돌았는데 i ≥ citations[i] 조건을 한 번도 만족하지 않았다면, 즉 모든 논문의 인용 횟수가 논문의 개수보다 많다면, 최대 h-index는 citations.lengh 가 된다.
  • 배운 개념:
    • 생각보다 코드는 간단하다. 문제 이해가 중요하다.
profile
세상을 이롭게 하는 프론트엔드 개발자 Jinny

0개의 댓글

관련 채용 정보