Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
Tags
- Java
- 유레카 부트캠프
- 자바
- 멀티캠퍼스IT부트캠프티
- LG유플러스 유레카 부트캠프
- 재귀
- LG유플러스 유레카 프론트엔드
- LG유플러스 유레카 3기 프론트엔드
- zod
- 프론트엔드 비대면반
- 프로세스
- 부트캠프후기
- 알고리즘
- 시간 복잡도
- 별찍기10
- 정렬
- git branch 협업
- 스레드
- 애자일
- 멀티캠퍼스IT부트캠프
- 코딩
- tanstack query
- 웹시큐리티
- LG유플러스 유레카 프론트엔드 개발자
- 브루트포스
- 2775번 문제
- 백준
- 프론트엔드
- Do it! 자료구조와 함께 배우는 알고리즘 입문
- 소수
Archives
- Today
- Total
개발 일기
백준 7568번 문제풀이 - 덩치 본문

https://www.acmicpc.net/problem/7568
7568번: 덩치
우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩
www.acmicpc.net
사람들의 키와 몸무게를 입력받고 그 순위를 출력하는 문제이다. 순위는 키와 몸무게 둘 다 커야 등 수를 유지할 수 있다.
모든 사람들의 키와 몸무게를 비교해야 되기 때문에 브루트 포스 알고리즘으로 문제를 풀었다.
코딩
public class Frame {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int N = Integer.parseInt(br.readLine());
int[][] arr = new int[50][3];
// 몸무게와 키를 입력받음
for (int i = 0; i < N; i++) {
StringTokenizer st = new StringTokenizer(br.readLine());
for (int j = 0; j < 2; j++) {
arr[i][j] = Integer.parseInt(st.nextToken());
}
}
// 등수를 1로 초기화
for (int i = 0; i < N; i++) {
arr[i][2] = 1;
}
int n = 0;
// 등수 판별
while (n < N) {
for (int i = 0; i < N; i++) {
if (i == n) {
continue;
}
if (arr[n][0] < arr[i][0] && arr[n][1] < arr[i][1]) {
arr[n][2]++;
} else if (arr[n][0] < arr[i][0] && arr[n][1] < arr[i][1]) {
arr[i][2]++;
}
}
n++;
}
for (int i = 0; i < N; i++) {
sb.append(arr[i][2]).append(' ');
}
System.out.println(sb);
}
}
결과

처음 제출시보다 두 번째 제출 때 시간이 조금 줄었는데 그 이유는
if (i == n) {
continue;
}
이 부분을 추가하면서 같은 비교를 또 하지 않기 때문에 시간이 줄어들었다.
느낀 점
브루트포스는 모든 경우를 비교하면 되기 때문에 푸는데 어려움은 없지만 더 효율을 증가시키는 방법을 고민해보는 것이 중요한 것 같다. 조금 더 개선할 부분을 항상 고민하는 것이 좋을 것 같다.
'백준 문제풀이' 카테고리의 다른 글
| SW 5215 햄버거 다이어트 (1) | 2025.09.16 |
|---|---|
| 백준 2231번 문제풀이 - 분해합 (0) | 2021.12.02 |
| 백준 2447번 문제풀이 - 별찍기 - 10 (0) | 2021.12.01 |
| 백준 11729번 문제풀이 - 하노이 탑 이동 순서 (0) | 2021.11.30 |
| 백준 1018번 문제풀이 - 체스판 다시 칠하기 (0) | 2021.11.29 |
Comments