https://www.acmicpc.net/problem/2669
2669번: 직사각형 네개의 합집합의 면적 구하기
입력은 네 줄이며, 각 줄은 직사각형의 위치를 나타내는 네 개의 정수로 주어진다. 첫 번째와 두 번째의 정수는 사각형의 왼쪽 아래 꼭짓점의 x좌표, y좌표이고 세 번째와 네 번째의 정수는 사각
www.acmicpc.net
해석 및 팁
이 문제는 2차원 배열을 선언하여 범위에 들어갈경우 값을 1로 넣습니다. 그 후에 반복문을 통해 값이 1인 것의 개수를 출력해주면 됩니다.
Java 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[][] arr = new int[101][101];
int count = 0;
for(int i = 0; i < 4; i++) {
int x1 = sc.nextInt();
int y1 = sc.nextInt();
int x2 = sc.nextInt();
int y2 = sc.nextInt();
for(int j = x1; j < x2; j++) {
for(int k = y1; k < y2; k++) {
arr[j][k] = 1;
}
}
}
for(int i = 0; i < 101; i++) {
for(int j = 0; j < 101; j++) {
if(arr[i][j] == 1) count++;
}
}
System.out.println(count);
}
}
'백준' 카테고리의 다른 글
백준 2846 오르막길(Java) (0) | 2023.01.17 |
---|---|
백준 10448 유레카 이론(Java) (0) | 2023.01.17 |
백준 2851 슈퍼 마리오(Java) (0) | 2023.01.16 |
백준 11005 진법 변환 2(Java) (0) | 2023.01.16 |
백준 2693 N번째 큰 수(Java) (1) | 2023.01.16 |