Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 다리를 지나는 트럭
- heap
- 기능개발
- 전화번호 목록
- Programmers
- 깊이우선탐색
- 넓이우선탐색
- 이중우선순위큐
- Brute Force
- Virtual DOM
- 완주하지 못한 선수
- Queue
- react-native-navigation
- Stack
- Javascript
- Data Structure
- Algorithm
- 가장 큰 수
- 더 맵게
- sorting
- hash
- 타겟 넘버
- browser workflow
- 소수찾기
- react-native
- 주식
- react
- react-native bind
- 디스크 컨트롤러
- k번째수
Archives
- Today
- Total
개발 블로그
[프로그래머스/Javascript/Sorting] H-Index 본문
1. 문제 설명(출처: programmers.co.kr/learn/courses/30/lessons/42747)
2. 문제 풀이
1) 문제에서 논문 n편 중, h번 이상 인용된 논문이 h편 이상이고 나머지 논문이 h번 이하 인용되었다면 h의 최댓값이 이 과학자의 H-Index 라고 했다. 우선 조건을 만족하는 h의 최댓값을 구하라고 했으니 citations를 내림차순으로 정렬한다.
2) i = 0부터 citations의 길이만큼 아래의 명령을 반복한다.
2-1) i이상의 숫자가 i개 이상 있는지 확인한다.
2-2-t) 현재 인덱스를 answer에 저장하고 반복문을 종료한다.
3) 만약 h-index를 찾지 못했다면
3-f) citations의 길이를 반환한다.
4) answer를 반환한다.
3. 결제코드
function solution(citations) {
var answer = 0;
citations.sort((a, b) => b - a)
for(var i = 0; i < citations.length; i++){
if (i >= citations[i]){
answer = i
break
}
}
if(i == citations.length) {
return i;
}
return answer;
}
'IT > Programmers' 카테고리의 다른 글
[프로그래머스/Python3/Hash] 전화번호 목록 (0) | 2021.04.10 |
---|---|
[프로그래머스/Javascript/Hash] 완주하지 못한 선수 (0) | 2021.04.09 |
[프로그래머스/Javascript/Sorting] 가장 큰 수 (0) | 2021.04.08 |
[프로그래머스/Javascript/Sorting] K번째수 (0) | 2021.04.07 |
[프로그래머스/Javascript/Queue] 프린터 (0) | 2021.04.07 |