목록2024/02/18 (4)
득이공간
14500번: 테트로미노 폴리오미노란 크기가 1×1인 정사각형을 여러 개 이어서 붙인 도형이며, 다음과 같은 조건을 만족해야 한다. 정사각형은 서로 겹치면 안 된다. 도형은 모두 연결되어 있어야 한다. 정사각형의 변 www.acmicpc.net #include using namespace std; int N, M; int Paper[500][500]; const int Tetromino[19][3][2] = { { { 1, 0 }, { 2, 0 }, { 3, 0 } },// 1-1 { { 0, 1 }, { 0, 2 }, { 0, 3 } },// 1-2 { { 1, 0 }, { 0, 1 }, { 1, 1 } },// 2 { { 1, 0 }, { 2, 0 }, { 2, -1 } },// 3-1 { { 1, ..
10026번: 적록색약 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록) www.acmicpc.net #include using namespace std; int N; char Color[100][100]; bool Visited[100][100]; bool Visited2[100][100]; int DX[4] = { -1, 0, 1, 0 }; int DY[4] = { 0, -1, 0, 1 }; void DFS(int X, int Y) { Visited[Y][X] = true; for (int i = 0; i < 4; ++i) { int NX = X + D..
9019번: DSLR 네 개의 명령어 D, S, L, R 을 이용하는 간단한 계산기가 있다. 이 계산기에는 레지스터가 하나 있는데, 이 레지스터에는 0 이상 10,000 미만의 십진수를 저장할 수 있다. 각 명령어는 이 레지스터에 www.acmicpc.net #include #include #include using namespace std; string Command[10000]; bool Visited[10000]; queue SearchQueue; void InitContainers() { for (int i = 0; i < 10000; ++i) { Command[i] = ""; Visited[i] = false; } while (!SearchQueue.empty()) { SearchQueue.po..
7662번: 이중 우선순위 큐 입력 데이터는 표준입력을 사용한다. 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터의 첫째 줄에는 Q에 적 www.acmicpc.net #include #include #include using namespace std; unordered_map CheckNum; priority_queue MaxHeap; priority_queue MinHeap; void Input(int Number) { ++CheckNum[Number]; MaxHeap.emplace(Number); MinHeap.emplace(Number); } void DeleteMax() { if (!MaxHeap.empty()) ..