2563번 색종이
https://www.acmicpc.net/problem/2563
#문제
#풀이
#include<iostream>
using namespace std;
int main() {
int arr[100][100] = {}; //도화지
int count; //색종이의 수
int x, y; //x축 y축
int answer = 0; //넓이
cin >> count;
for (int i = 0; i < count; i++) //색종이 수만큼 반복
{
cin >> x >> y; //색종이의 위치를 입력받음
for (int j = x; j < x + 10; j++) //색종이의 X범위
{
for (int k = y; k < y + 10; k++) //색종이의 Y범위
{
if (arr[j][k] == 1) //도화지에 해당위치에 이미 색종이가 있다면
continue; //현재 for문 안에있는 코드 생략
arr[j][k] = 1; //도화지에 색종이를 붙인 부분을 1
answer++; //1의 수
}
}
}
cout << answer;
}
100 X 100 크기의 도화지를 arr라는 배열로 만들고 도화지에 아무것도 없으면 공백 사각형이 있으면 1로 정하여 1의 수를 구하면 색종이가 붙은 검은 영역의 넓이를 구할 수 있다.
#countinue
countinue는 반복문에서 빠져나오는 break와 다르게 반복문 안에서 countinue 밑에 있는 코드를 스킵한다.
#결과
2차원 배열을 활용한 문제이다.
'프로그래밍 > C++' 카테고리의 다른 글
[C++]윈도우 API를 활용한 절대 음감 게임 (0) | 2023.04.06 |
---|---|
[백준/C++] 16076번 휴식이 필요해 문제풀이 (0) | 2023.04.01 |
[CodeUp/C++] 1226번 이번 주 로또 문제풀이 (0) | 2023.03.14 |
[CodeUp/C++] 2628 번 케익 자르기 문제풀이 (0) | 2023.03.05 |
[CodeUp/C++] 4041번 숫자 다루기 문제풀이 (0) | 2023.03.03 |