[Programmers] H-Index - 정렬

동민·2021년 3월 11일
import java.util.Arrays;

// H-Index - 정렬
public class H_Index {

	public int solution(int[] citations) {
		int answer = 0;

		Arrays.sort(citations);
		for (int i = 0; i <= citations.length; i++) {
			int count = 0;
			for (int j = citations.length - 1; j >= 0; j--) {
				if (i <= citations[j]) {
					count++;
				} else {
					break;
				}
			}
			if (count >= i) {
				answer = i;
			} else {
				break;
			}
		}
		return answer;
	}

	public int solution1(int[] critations) {

		int answer = 0;

		Arrays.sort(critations);
		for (int i = critations.length - 1; i >= 0; i--) {
			int min = Math.min(critations[i], critations.length - i);
			if (answer < min) {
				answer = min;
			}
		}
		return answer;
	}

	public static void main(String[] args) {

		H_Index s = new H_Index();

//		int[] citations1 = { 3, 0, 6, 1, 5 };
		int[] citations1 = { 2, 2, 2, 2, 2 };
		int[] citations2 = { 22, 42 };
		int[] citations3 = { 1, 18, 19, 20 };

		System.out.println(s.solution1(citations1)); // 2
		System.out.println(s.solution1(citations2)); // 2
		System.out.println(s.solution1(citations3)); // 3

	}

}
profile
BE Developer

0개의 댓글