백준 7568. 덩치 (Java)알고리즘/백준2023. 7. 20. 00:53
Table of Contents
반응형
문제링크
7568번: 덩치
우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩
www.acmicpc.net
풀이 코드
import java.util.*;
class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] weightArr = new int[n];
int[] heightArr = new int[n];
for(int i=0; i<n; i++) {
weightArr[i] = sc.nextInt();
heightArr[i] = sc.nextInt();
}
for(int x : solution(n, heightArr, weightArr)) {
System.out.print(x + " ");
}
}
private static int[] solution(int n, int[] heightArr, int[] weightArr) {
int[] answer = new int[n];
for(int i=0; i<n; i++) {
int rank = 1;
int weight1 = weightArr[i];
int height1 = heightArr[i];
for(int j=0; j<n; j++) {
int weight2 = weightArr[j];
int height2 = heightArr[j];
if (weight1 < weight2 && height1 < height2) {
rank++;
}
}
answer[i] = rank;
}
return answer;
}
}
아이디어
간단하게 완전탐색으로 풀었다.
❗ 풀이 방법
- 무게를 담은 배열과 키를 담은 배열로 나눠서 입력받은 뒤, solution에 보냈다.
- 모든사람의 등수를 초기값 1등으로 설정한 뒤 (
int rank = 1;
), 다른 사람들과 비교하여 키, 몸무게가 둘다 자신보다 크다면 등수를 1씩 증가시켜주어 정답 배열에 담아주었다. for(int j=0; j<n; j++) { int weight2 = weightArr[j]; int height2 = heightArr[j]; if (weight1 < weight2 && height1 < height2) { rank++; } }
반응형
'알고리즘 > 백준' 카테고리의 다른 글
백준 2503. 숫자 야구 (Java) (0) | 2023.07.20 |
---|---|
백준 3085. 사탕 게임 (Java) (0) | 2023.07.20 |
백준 1182. 부분 수열의 합 (Java) (0) | 2023.07.20 |
백준 1920. 수 찾기 (Java) (0) | 2023.07.20 |
백준 2075. N번째 큰 수 (Java) (0) | 2023.07.20 |
@Caffeine Developer :: 개발스토리
개발을 하며 만났던 문제들과 해결 과정, 공부한 내용 등을 기록합니다.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!