[알고리즘/백준] #2669 직사각형 네개의 합집합의 면적 구하기

JudyLia·2022년 2월 16일
0

알고리즘

목록 보기
45/61
post-thumbnail

문제) 평면에 네 개의 직사각형이 놓여 있는데 그 밑변은 모두 가로축에 평행하다. 이 네 개의 직사각형들은 서로 떨어져 있을 수도 있고, 겹쳐 있을 수도 있고, 하나가 다른 하나를 포함할 수도 있으며, 변이나 꼭짓점이 겹칠 수도 있다.

이 직사각형들이 차지하는 면적을 구하는 프로그램을 작성하시오.

package IM_study.rectangle;

import java.util.Scanner;

public class BJ_2669 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int[][] map =new int[100][100];
		int[][] rec = new int[4][4];
		for(int i=0;i<4;i++) {
			for(int j=0;j<4;j++) {
				rec[i][j]=sc.nextInt();
			}
		}
		for(int i=0;i<4;i++) {
			for(int r=rec[i][0];r<rec[i][2];r++) {
				for(int c = rec[i][1]; c<rec[i][3];c++) {
					if(map[r][c]==0) map[r][c]=1;
				}
			}
		}
		int cnt=0;
		for(int i=0;i<100;i++) {
			for(int j=0;j<100 ;j++) {
				if(map[i][j]==1) cnt+=1;
			}
		}
		
		System.out.println(cnt);
	}
}
profile
안녕:)

0개의 댓글

관련 채용 정보