Recent Posts
Notice
No Rules Rules
색종이 (feat. 백준, 10163번) 본문
728x90
반응형
색종이
https://www.acmicpc.net/problem/10163
// woohyeon.kim
// kim519620.tistory.com
#include <iostream>
#include <string.h>
using namespace std;
int arr[1002][1002], ans[101];
int main(){
ios::sync_with_stdio(false), cin.tie(NULL);
memset(arr, 0, sizeof(arr));
memset(ans, 0, sizeof(ans));
register int minX = 1010, minY = 1010, maxX = 0, maxY = 0, N;
cin >> N;
for(register int n = 1, x, y, w, h; n <= N; ++n){
cin >> x >> y >> w >> h;
for(register int i = x, j; i < x + w; ++i)
for(j = y; j < y + h; ++j)
arr[i][j] = n;
if(x < minX) minX = x;
if(y < minY) minY = y;
if(x + w > maxX) maxX = x + w;
if(y + h > maxY) maxY = y + h;
}
for(register int x = minX, y; x < maxX; ++x)
for(y = minY; y < maxY; ++y)
++ans[arr[x][y]];
for(register int n = 1; n <= N; ++n)
cout << ans[n] << "\n";
return 0;
}
// *&)*@*
반응형
색종이 순서마다 번호를 할당하고 색종이가 놓여진 전체 영역에서 각 번호의 개수를 출력하면 됩니다.
단, 마지막 색종이가 가장 위에 놓여야 하기 때문에 첫번째 색종이부터 번호를 할당시켜야 합니다.
728x90
반응형
'생활 > 코테' 카테고리의 다른 글
최소 스패닝 트리 (feat. 백준, 1197번) (0) | 2023.03.02 |
---|---|
다리 만들기 2 (feat. 백준, 17472번) (0) | 2023.03.02 |
방 배정 (feat. 백준, 13300번) (0) | 2023.02.28 |
다리 만들기 (feat. 백준, 2146번) (0) | 2023.02.28 |
알고리즘 수업 - 알고리즘의 수행 시간 6 (feat. 백준, 24267번) (0) | 2023.02.28 |
Comments