정렬 활용한 알고리즘 문제풀이
입출력
- 입력: 어떤 과학자가 발표한 논문의 인용 횟수를 담은 배열 citations가 매개변수로 주어집니다.
- 출력: 어떤 과학자가 발표한 논문 n편 중, h번 이상 인용된 논문이 h편 이상이고 나머지 논문이 h번 이하 인용되었다면 h의 최댓값을 출력하면됩니다.
예제 코드
import java.util.*;
class Solution {
public int solution(int[] citations) {
int answer = 0;
Arrays.sort(citations);
for (int i = 0; i < citations.length; i++) {
if (citations[i] >= citations.length - i) return citations.length - i;
}
return answer;
}
}
회고
- 문제를 이해하는데 시간이 오래걸렸습니다.
- 알고리즘에 대한 이해도 중요하지만, 요구사항을 어떻게 정의하고 기술적으로 풀어낼지 고민하는 능력 또한 필요하다는 것을 느꼈습니다