분류 전체보기
-
JUNGOL...134일지 2021. 9. 8. 01:31
Intermediate_Coder/자료구조/색종이(고) 문제 가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 붙인다. 이러한 방식으로 색종이를 한 장 또는 여러 장 붙인 후 도화지에서 검은색 직사각형을 잘라내려고 한다. 직사각형 또한 그 변이 도화지의 변과 평행하도록 잘라내어야 한다. 예를 들어 흰색 도화지 위에 세 장의 검은색 색종이를 과 같은 모양으로 붙였다. 에 표시된 대로 검은색 직사각형을 잘라내면 그 넓이는 22×5=110이 된다. 반면 에 표시된 대로 검은색 직사각형을 잘라내면 그 넓이는 8×15=120이 된다. 검은색 색종이의 수와 각 색종이를 붙..
-
알고리즘...50일지 2021. 9. 8. 01:25
이진 검색 트리 출력 함수 제작 노드의 깊이와 넓이의 관계를 파악하기 위해 1, 4 를 추가한다. main.cpp #include "Common.h" #include "검색트리/BinarySearchTree.h" int main() { int n = 9; int* arr; // 동작 테스트를 위한 값 //arr = new int[n]{ 2, 4, 6, 8, 10, 9, 7, 5, 3, 1 }; arr = new int[n]{ 10, 5, 20, 3, 7, 15, 25, 1, 4 }; BinarySearchTree tree; for (int i = 0; i < n; i++) { tree.Insert(arr[i]); } tree.PrintBinarySearchTree(); //tree.Delete(5); /..
-
JUNGOL...133일지 2021. 9. 7. 19:51
Intermediate_Coder/자료구조/히스토그램 문제 히스토그램이란 보통 분포의 정도를 알기 위해 사각형의 서열을 기준선에 맞춰 늘어놓은 다각형을 말한다. 만약 임의의 수열이 2, 1, 4, 5, 1, 3, 3일 경우 사각형의 너비를 1로 맞추어 히스토그램으로 만들면 다음과 같다. 우리가 하고자 하는 것은 임의의 히스토그램이 주어졌을 때 히스토그램 내에서 사각형으로 이루어진 가장 큰 면적의 크기를 알고자 한다. 왼쪽 의 히스토그램에서 가장 큰 사각형의 영역은 오른쪽에 밑줄이 쳐진 영역과 같다 입력 형식 입력 첫 번째는 히스토그램을 이루는 사각형의 개수 n(n≤100,000)이 입력되고 그 뒤로 히스토그램을 이루는 사각형의 높이가 순서대로 n개 입력이 된다. 사각형의 높이 k는 0 ≤ k ≤ 1,00..
-
알고리즘...49일지 2021. 9. 7. 19:06
이진 검색 트리 출력 함수 제작 추가로 3, 7, 15, 25를 추가하여 트리를 출력하고자 한다. main.cpp #include "Common.h" #include "검색트리/BinarySearchTree.h" int main() { int n = 7; int* arr; // 동작 테스트를 위한 값 //arr = new int[n]{ 2, 4, 6, 8, 10, 9, 7, 5, 3, 1 }; arr = new int[7]{ 10, 5, 20, 3, 7, 15, 25 }; BinarySearchTree tree; for (int i = 0; i < n; i++) { tree.Insert(arr[i]); } tree.PrintBinarySearchTree(); //tree.Delete(5); //tree...
-
JUNGOL...132일지 2021. 9. 6. 01:00
Intermediate_Coder/자료구조/히스토그램 문제 히스토그램이란 보통 분포의 정도를 알기 위해 사각형의 서열을 기준선에 맞춰 늘어놓은 다각형을 말한다. 만약 임의의 수열이 2, 1, 4, 5, 1, 3, 3일 경우 사각형의 너비를 1로 맞추어 히스토그램으로 만들면 다음과 같다. 우리가 하고자 하는 것은 임의의 히스토그램이 주어졌을 때 히스토그램 내에서 사각형으로 이루어진 가장 큰 면적의 크기를 알고자 한다. 왼쪽 의 히스토그램에서 가장 큰 사각형의 영역은 오른쪽에 밑줄이 쳐진 영역과 같다 입력 형식 입력 첫 번째는 히스토그램을 이루는 사각형의 개수 n(n≤100,000)이 입력되고 그 뒤로 히스토그램을 이루는 사각형의 높이가 순서대로 n개 입력이 된다. 사각형의 높이 k는 0 ≤ k ≤ 1,00..
-
알고리즘...48일지 2021. 9. 6. 00:59
이진 검색 트리 출력 함수 제작 깊이가 2 인 경우의 출력 완료 BinarySearchTree.cpp /// /// 이진 검색 트리를 출력한다. /// void BinarySearchTree::PrintBinarySearchTree() { if (_root == nullptr) { std::cout left != nullptr) { _queue.push(node->left); } if (node->right != nullptr) { _queue.push(node->right); } } std::cout GetMaxDepth() }; int center{ (depth - 1) * 5 / 2 }; bool isNeedReturn{ ((node == _root) || IsRightNode(node) && Is..
-
JUNGOL...131일지 2021. 9. 5. 11:15
Intermediate_Coder/자료구조/히스토그램 문제 히스토그램이란 보통 분포의 정도를 알기 위해 사각형의 서열을 기준선에 맞춰 늘어놓은 다각형을 말한다. 만약 임의의 수열이 2, 1, 4, 5, 1, 3, 3일 경우 사각형의 너비를 1로 맞추어 히스토그램으로 만들면 다음과 같다. 우리가 하고자 하는 것은 임의의 히스토그램이 주어졌을 때 히스토그램 내에서 사각형으로 이루어진 가장 큰 면적의 크기를 알고자 한다. 왼쪽 의 히스토그램에서 가장 큰 사각형의 영역은 오른쪽에 밑줄이 쳐진 영역과 같다 입력 형식 입력 첫 번째는 히스토그램을 이루는 사각형의 개수 n(n≤100,000)이 입력되고 그 뒤로 히스토그램을 이루는 사각형의 높이가 순서대로 n개 입력이 된다. 사각형의 높이 k는 0 ≤ k ≤ 1,00..
-
알고리즘...47일지 2021. 9. 5. 11:14
이진 검색 트리 출력 함수 제작 차근차근 단계를 밟아 만들어 가기 위해 루트 노드와 두 개의 자식이 있다고 가정한 상태로 진행한다. BinarySearchTree.cpp /// /// 이진 검색 트리를 출력한다. /// void BinarySearchTree::PrintBinarySearchTree() { if (_root == nullptr) { std::cout GetMaxDepth() }; int center{ (depth - 1) * 5 / 2 }; bool isNeedReturn{ ((node == _root) || IsRightNode(node) && IsRightNode(node->parent)) }; for (int i = 0; i < center; i++) { std::cout