C++/백준 C++

[C/C++] 백준 2563번 색종이

CE : 하랑 2024. 5. 29. 16:47

 

 

 

 

 


 

코드

#include <iostream>
#include <vector>

int main()
{
	std::vector<std::vector<int>> numarea;
	int count = 0;

	// 사이즈 고정
	numarea.resize(100);
	for (int i = 0; i < 100; i++)
	{
		numarea[i].resize(100);
	}

	int n;
	std::cin >> n;

	// 2차 배열 면적마다 해당되는 범위에 값을 넣어줌
	for (int i = 0; i < n; i++)
	{
		int x, y;

		std::cin >> x >> y;

		for (int j = x; j < x+10; j++)
		{
			for (int k = y; k < y+10; k++)
			{
				numarea[j][k]++;
			}
		}
	}

	// 채워지지 않은 부분만 제외 0이 아닌 부분 카운트
	for (int i = 0; i < 100; i++)
	{
		for (int j = 0; j < 100; j++)
		{
			if (numarea[i][j] > 0)
			{
				count++;
			}
		}
	}

	std::cout << count;
	// 데이터 정리
	for (int i = 0; i < 100; i++)
	{
		numarea[i].clear();
	}

	numarea.clear();
}