-
[프로그래머스] Level.2 H-Index (JAVA)개발공부/코딩테스트 연습문제 2022. 2. 7. 13:49
문제 설명과 제한사항

풀이
import java.util.*; class Solution { public int solution(int[] citations) { int answer = 0; Arrays.sort(citations); for(int i = 0; i < citations.length ; i++){ int count = citations.length - i; if(citations[i] >= count) { answer = count; break; } } return answer; } }++
level.2 문제 중에선 쉬운 난이도의 문제 같다.
풀이는 처음으로 citations[i]의 값보다 큰 값들의 갯수가 citations[i]보다 커질때 값을 찾는 방식이었다.
예를 들면 [3, 0, 6, 1, 5] 를 정렬 -> [0, 1, 3, 5, 6]
일때
i == 0 -> count = 5 - 0 = 5
0 >= 5 false
i == 1 -> count = 4
1 >= 4 false
i == 2 -> count = 3
3 >= 3 true
이때 count = citations[i] 보다 큰 값의 갯수.
그러므로 i ==0, 1 일때는 h번 이상 인용된 논문이 h편 이상이지만 최댓값이 아님.
'개발공부 > 코딩테스트 연습문제' 카테고리의 다른 글
[프로그래머스] Level.2 가장 큰 수 (JAVA) (0) 2022.02.08 [프로그래머스] Level.2 - 프린터 (JAVA) (0) 2022.01.26 [프로그래머스] Level.2 - 문자열 압축(JAVA) (0) 2022.01.21 [프로그래머스] Level.2 - 전화번호 목록 (JAVA) (0) 2022.01.21 [프로그래머스] Level.2 - (1차)뉴스 클러스터링 (JAVA) (0) 2022.01.19