1.
브루트포스 문제.
순차적으로 완전 탐색을 하면 되는 단순하지만 유용한 알고리즘이다.
오랜만에 접해서 그런가 많이 헤맸다. 사용자 정의 class를 만들어 별의별 짓을 하다가 멘탈 나가서 풀이를 찾아보았다.
단순하게 생각하자!
2.
선택정렬과 유사한 느낌으로 풀면 된다.
키와 몸무게를 각각 비교하여 작은 쪽의 rank 인덱스를 1 증가시킨다.
처음 모든 인원의 순위를 1로 초기화하고 순위가 밀려나는 형식의 아이디어가 중요하다.
3.
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[][] data = new int[n][2];
int[] rank = new int[n];
for (int i = 0; i < n; i++) {
rank[i] = 1;
data[i][0] = sc.nextInt();
data[i][1] = sc.nextInt();
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
if (data[i][0] > data[j][0] && data[i][1] > data[j][1]) {
rank[j]++;
}
}
}
for (int i = 0; i < n; i++) {
System.out.print(rank[i] + " ");
}
sc.close();
}
}
4.
순위가 밀려나는 아이디어.
[참고] https://oper6210.tistory.com/138
'Algorithm' 카테고리의 다른 글
[Java] 백준 9251 : LCS (0) | 2020.08.14 |
---|---|
[Java] 백준 1339 : 단어 수학 (0) | 2020.08.14 |
[Java] 백준 1946 : 신입 사원 (0) | 2020.08.13 |
[Java] 백준 1753 : 최단경로 (0) | 2020.08.12 |
[Java] 백준 2468 : 안전 영역 (0) | 2020.08.12 |