본문 바로가기
알고리즘/JAVA

8. 등수구하기

by vivi 2021. 8. 31.
import java.util.*;

class Main {
	public int[] solution(int[] input) {
		int[] answer = new int[input.length];
		int[] score = new int[101];
		int grade = 1;

		for (int i = 0; i <= 100; i++)
			score[i] = 0;
		for (int i = 0; i < input.length; i++) {
			score[input[i]]++;
		}
		int tmp = 0;
		for (int i = 100; i >= 3; i--) {
			if (score[i] != 0) {
				tmp = score[i];
				score[i] = grade;
				grade += tmp;
			}
		}
		for (int i = 0; i < input.length; i++) {
			answer[i] = score[input[i]];
		}
		return answer;
	}

	public static void main(String[] args) {
		Main T = new Main();
		Scanner kb = new Scanner(System.in);
		int num = kb.nextInt();
		int[] input = new int[num];
		for (int i = 0; i < num; i++)
			input[i] = kb.nextInt();
		for (int x : T.solution(input))
			System.out.print(x + " ");
	}
}

 

 

import java.util.*;

class Main {
	public int[] solution(int[] input) {
		int[] answer = new int[input.length];
		int cnt = 1;
		for (int i = 0; i < input.length; i++) {
			cnt = 1;
			for (int j = 0; j < input.length; j++) {
				if (j == i)
					continue;
				else if (input[j] > input[i])
					cnt++;
			}
			answer[i] = cnt;
		}
		return answer;
	}

	public static void main(String[] args) {
		Main T = new Main();
		Scanner kb = new Scanner(System.in);
		int num = kb.nextInt();
		int[] input = new int[num];
		for (int i = 0; i < num; i++)
			input[i] = kb.nextInt();
		for (int x : T.solution(input))
			System.out.print(x + " ");
	}
}

 

'알고리즘 > JAVA' 카테고리의 다른 글

10. 봉우리  (0) 2021.09.11
9. 격자판 최대합  (0) 2021.09.11
7. 점수계산  (0) 2021.08.31
4. 피보나치 수열  (0) 2021.08.31
2. 보이는 학생  (0) 2021.08.31

댓글