자바 백준 9063번
브론즈 3
https://www.acmicpc.net/problem/9063
문제 보기
분류: 수학, 구현, 기하학
문제 풀기
모든 점을 포함하는 가장 작은 사각형을 찾기 위해서 입력되는 x, y 좌표를 각각 비교하여 최소값, 최대값을 기록한다.
x 좌표의 (최대값 - 최소값)은 사각형의 가로 길이가 되며, y 좌표의 (최대값 - 최소값)은 사각형의 세로 길이가 된다.
이렇게 찾은 가로 세로를 통해 최소 사각형의 넓이를 구한다.
코드 보기
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
int minX = Integer.MAX_VALUE, minY = Integer.MAX_VALUE;
int maxX = Integer.MIN_VALUE, maxY = Integer.MIN_VALUE;
for (int i = 0; i < N; i++) {
int x = sc.nextInt();
int y = sc.nextInt();
minX = Math.min(minX, x);
minY = Math.min(minY, y);
maxX = Math.max(maxX, x);
maxY = Math.max(maxY, y);
}
int width = maxX - minX;
int height = maxY - minY;
int area = width * height;
System.out.println(area);
}
}
'공부하기 > 백준' 카테고리의 다른 글
[Java] 백준 풀기 16486 - 운동장 한 바퀴 (0) | 2023.08.06 |
---|---|
[Java] 백준 풀기 7510 - 고급 수학 (0) | 2023.08.05 |
[Java] 백준 풀기 5073 - 삼각형과 세 변 (0) | 2023.08.03 |
[Java] 백준 풀기 10101 - 삼각형 외우기 (0) | 2023.08.02 |
[Java] 백준 풀기 14215 - 세 막대 (2) | 2023.07.31 |