본문 바로가기
반응형

정리12

[Python] 백준 11055: 가장 큰 증가하는 부분 수열 solved.ac기준 Silver 2 - DP 문제수열 A가 주어졌을 때, 그 수열의 증가하는 부분 수열 중에서 합이 가장 큰 것을 구하는 프로그램을 작성하시오.예를 들어, 수열 A = {1, 100, 2, 50, 60, 3, 5, 6, 7, 8} 인 경우에 합이 가장 큰 증가하는 부분 수열은 A = {1, 100, 2, 50, 60, 3, 5, 6, 7, 8} 이고, 합은 113이다.입력첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000)이 주어진다.둘째 줄에는 수열 A를 이루고 있는 Ai가 주어진다. (1 ≤ Ai ≤ 1,000)출력첫째 줄에 수열 A의 합이 가장 큰 증가하는 부분 수열의 합을 출력한다.예제 입력 1101 100 2 50 60 3 5 6 7 8예제 출력 1113 정답 코드n = .. 2024. 7. 15.
[Python] 백준 3213: 피자 solved.ac기준 Silver 4 문제 자체의 난이도는 낮은데 비문학 같이 해석에 애를 먹어 시간이 오래걸리거나 제출 난사를 해서 풀게 되면 멘탈이 붕괴되는 것 같다. 이 문제가 그런 케이스였다.문제오늘은 상근이의 생일이다. 상근이는 친구들과 피자를 먹으러 갔다.상근이의 친구들은 매우 어려서 피자 한 판을 먹을 수 없다. 하지만, 각 친구들은 자신이 먹을 수 있는 피자의 양을 알고 있다.친구들이 먹을 수 있는 피자의 양은 항상 1/4, 1/2, 3/4 중 하나이다.상근이는 피자 최소 몇 판을 시키면 친구들이 모두 피자를 자신이 먹을 수 있는 양만큼 먹을 수 있는지 구하는 프로그램을 작성하시오. 상근이는 피자를 먹지 않으며, 모든 친구들이 정확히 한 조각씩 피자를 가져야 한다.입력첫째 줄에 친구의 수 .. 2024. 7. 12.
4-2. 이진 탐색 트리 (Binary Search Tree) 이진 탐색 트리란? 이진 트리에 삽입, 삭제 규칙을 가미하여 탐색에 용이하도록 구성된 트리이다.  이진 탐색 트리의 규칙 이진 트리는 다음과 같은 규칙을 가지고 있다.  1. 모든 노드의 값은 유일하다. 2. 오른쪽 자식 노드의 값이 왼쪽 자식 노드보다 항상 크다. 이진 탐색 트리의 연산 각 예시 코드에 쓰이는 트리 노드의 구조체는 이전 공부 기록을 참조. 2024.07.07 - [전산/자료구조] - 4-1. 이진 트리 (Binary Tree)  삽입// 새로운 노드를 삽입하는 함수struct Node* insert(struct Node* node, int key) { // 트리가 비어있으면 새 노드를 반환 if (node == NULL) { return newNode(key); .. 2024. 7. 9.
4-1. 이진 트리 (Binary Tree) 이진 트리란? 트리의 차수가 2인 트리. 트리를 구성하는 노드들의 자식은 최대 2개이다. 하나의 부모 노드에는 왼쪽, 오른쪽 자식이 존재하는 형태이다. 이진 트리의 형태 1. 정 이진 트리 (Full Binary Tree) 모든 노드의 차수가 2 혹은 0인 경우이다. 만약 자식이 하나만 존재하는 노드가 있다면, 정 이진 트리라고 할 수 없다. 위 같은 경우 차수가 1인 노드가 존재하지 않고, 리프 노드를 제외한 노드들의 자식은 모두 2개 이므로 정 이진 트리이다.  2. 포화 이진 트리 (Perfect Binary Tree)  정 이진 트리의 조건에 더하여 모든 리프 노드의 레벨이 같아야 한다. 우리가 생각하는 예쁘게 꽉 찬 트리의 모습이 포화 이진 트리이다.  3. 완전 이진 트리 (Complete B.. 2024. 7. 7.
4. 트리 (Tree) 트리란?  노드 간에 부모 - 자식 관계를 가지는 방향성이 있는 그래프. 한 부모 노드가 여러 개의 자식 노드를 가질 수 있기 때문에 비 선형 자료 구조이다. 항상 부모가 없는 가장 상위의 루트(root)노드로 부터 시작해 뻗어나가는 모양이 나무와 닮아 tree라는 이름이 붙었다. 트리의 용어 트리에는 사용의 편리함을 위해 사용하는 개념과 용어들이 있다.  아래 트리의 예시를 기준으로 설명하겠다.   1. 루트 노드 (root) : 부모가 없는 가장 최상위 노드. 위 트리에서는 가장 상단의 1번 노드이다. 2. 부모 노드 (parent) : 한 노드와 연결된 상위 노드. 예를 들어 2번 노드의 부모는 1번 노드이고, 6번 노드의 부모는 3번 노드이다. 3. 자식 노드 (child) : 한 노드와 연결된 .. 2024. 7. 6.
Visual Studio 꿀팁 저는 고등학교 때부터 프로그래밍 수업을 들어왔고 프로그래밍을 해왔는데, 모든 수업에 공통의문이 있습니다. 왜 개발 툴의 사용법이나 팁을 알려주지는 않을까? 프로그래밍을 처음 접할 때에는 코딩 속도가 매우 느립니다. 많이 안쳐본 영어 타자도 한 몫 하지만, Visual Studio를 비롯한 개발 툴의 유용한 기능을 활용하지 못해 그런 점도 있습니다. 그래서 예전에 고등학교 선배들한테 배워서 아직까지도 써먹는! 교수님, 선생님들은 가르쳐주지 않는 Visual Studio 꿀팁을 몇가지 알려드리고자 합니다. 1. 코드 자동정리 (Ctrl + k + f) 프로그래밍에서 중요한 것이 알고리즘이 첫번째라면 두번째는 가독성, 예쁘게 코드를 작성하는 것이라고 생각합니다. Visual Studio에는 자동으로 코드를 예.. 2018. 6. 20.
반응형