https://www.acmicpc.net/problem/2669
2669번: 직사각형 네개의 합집합의 면적 구하기
평면에 네 개의 직사각형이 놓여 있는데 그 밑변은 모두 가로축에 평행하다. 이 네 개의 직사각형들은 서로 떨어져 있을 수도 있고, 겹쳐 있을 수도 있고, 하나가 다른 하나를 포함할 수도 있으
www.acmicpc.net
[난이도] Bronze1
[유형] 구현
[풀이]
100x100 board 배열을 선언한 뒤, 각 4개의 사각형을 체크하면서
차지하는 영역에 체크를 해준 뒤 체크된 영역을 더해주면 됩니다.
#include <cstdio>
int a,b,c,d,board[101][101],ans;
int main(){
for(int i=0;i<4;i++){
scanf("%d%d%d%d",&a,&b,&c,&d);
for(int i=a;i<c;i++)
for(int j=b;j<d;j++) board[i][j]=1;
}
for(int i=0;i<=100;i++)
for(int j=1;j<=100;j++) ans+=board[i][j];
printf("%d",ans);
}
https://github.com/has2/Problem-Solving/blob/master/boj-solved.ac/Bronze1/2669.cpp
'Problem-Solving > BOJ' 카테고리의 다른 글
[BOJ/백준][Silver5] 2635 : 수 이어가기 (C++) (0) | 2022.07.21 |
---|---|
[BOJ/백준][Silver3] 2659 : 십자카드 문제 (C++) (0) | 2022.07.21 |
[BOJ/백준][Gold2] 22343 : 괄호의 값 비교 (C++) (0) | 2022.07.05 |
[BOJ/백준][Bronze2] 22341 : 사각형 면적 (C++) (0) | 2022.07.05 |
[BOJ/백준][Gold1] 21761 : 초직사각형 (C++) (0) | 2022.07.05 |