전체 글

전체 글

    [코독하구만 팀] 2021.01.05(화) - 3주차 개인 목표

    목표 : LCA(Lowest Common Ancestor) 알고리즘 개념 및 실습 문제를 복습하고 백준 문제를 통해 실제 문제에 적용해본다. 실습은 총 4문제로 알고리즘 수업 시간이 진행되었던 실습 문제이다. 1. root 찾기 이진 트리의 노드의 개수가 주어지고, 노드의 key와 자식들이 주어졌을 때 해당 트리의 root를 찾으시오. [입력 값] 6 # N D . . # 간선의 정보 N개 E . . F . . C F . B D E A B C [예상 출력] A 2. 트리 순회 이진 트리의 노드의 개수가 주어지고, 노드의 key와 자식들이 주어졌을 때 해당 트리의 Preorder/ Inorder / Postorder 순으로 순회하고 출력하시오. [입력 값] 6 # N D . . # 간선의 정보 N개 E ...

    [코독하구만 팀] 2020.12.30(수) - 2주차 모임 결과

    [코독하구만 팀] 2020.12.30(수) - 2주차 모임 결과 고도현 - prim 알고리즘과 kruskal 알고리즘 개념 및 실습 문제를 복습하고 백준 문제를 통해 실제 문제에 적용해봄으로써 둘의 차이와 알고리즘 동작방식에 대해 확실하게 아는 계기가 되었다. 신희승 - 분할정복 알고리즘에 대해 공부하면서 하나의 큰 문제를 바로 해결하는 것이 아니라 작은 여려개의 문제로 분할하여 해결하는 것이 시간복잡도나 효율성 면에서 더 뛰어나다는 것을 알게 되었다. 이동헌 - Kruskal 알고리즘을 복습하면서 개념을 명확하게 정립할 수 있었고 수업 시간에서의 예제 이외의 문제를 접해봄으로써 개념적인 부분뿐만 아니라 응용 방법을 습득할 수 있었다. 최현석 - 알고리즘 예제를 풀며 시간과 메모리 비용을 줄이기 위해 메..

    [코독하구만 팀] 2020.12.30(수) - 2주차 개인 결과

    prim와 kruskal를 개념과 실습 문제를 복습하고 백준 문제를 통해 실제 문제에 적용해봄으로써 둘의 차이와 알고리즘 동작방식에 대해 확실하게 아는 계기가 되었다. - 목표 - codekodo.tistory.com/8 [코독하구만 팀] 2020.12.30(수) - 2주차 개인 목표 목표 : prim 알고리즘과 kruskal 알고리즘 개념 및 실습 문제를 복습하고 백준 문제를 통해 실제 문제에 적용해본다. 실습은 총 3문제로 알고리즘 수업 시간이 진행되었던 실습 문제이다. 1. prim 알고 codekodo.tistory.com 1. prim 알고리즘 import heapq def prim(edges, vertices, n): queue = [] heapq.heappush(queue, [0, verti..

    [코독하구만 팀] 2020.12.30(수) - 2주차 모임 목표

    [코독하구만 팀] 2020.12.30(수) - 2주차 모임 목표 고도현 - prim 알고리즘과 kruskal 알고리즘 개념 및 실습 문제를 복습하고 백준 문제를 통해 실제 문제에 적용해본다. 신희승 - 분할정복 알고리즘에 대해 이해하고 관련된 알고리즘 문제를 풀어보며 개념을 확립시킨다. 이동헌 - kruskal 알고리즘의 이론을 복습하고 Min-cost Spanning Tree를 찾는 프로그램을 구현한다 최현석 - 분할정복법 예제를 풀어보고, 지난 주 학습했던 시간복잡도를 예제에 적용해서 구해본다. / 웹크롤링 코드를 따라쳐보며 어떤 식으로 동작하는지 알아본다. 고도현 - codekodo.tistory.com/8 신희승 - ciwekdo.tistory.com/5 이동헌 - blog.naver.com/to..

    [코독하구만 팀] 2020.12.30(수) - 2주차 개인 목표

    목표 : prim 알고리즘과 kruskal 알고리즘 개념 및 실습 문제를 복습하고 백준 문제를 통해 실제 문제에 적용해본다. 실습은 총 3문제로 알고리즘 수업 시간이 진행되었던 실습 문제이다. 1. prim 알고리즘 무방향 가중치 그래프가 주어졌을 때 prim 알고리즘을 이용하여 MST를 구하고 그 에지의 합을 출력. (모든 노드가 연결되지 않아, MST가 없을 경우 0을 출력) 입력 값은 다음과 같이 주어진다. 7 12 # N, M A B C D E F G # 노드의 개수 N 개 A B 7 # 간선의 정보 M 개 C B 8 A D 5 C E 5 D B 9 E B 7 D E 15 E G 9 F G 11 E F 8 F D 6 E D 15 2. kruskal 알고리즘 무방향 가중치 그래프가 주어졌을 때 kr..

    [코독하구만 팀] 2020.12.23(수) - 1주차 모임 결과

    [코독하구만 팀] 2020.12.23(수) - 1주차 모임 결과 고도현 - BFS와 DFS를 개념과 실습 문제를 복습하고 백준 문제를 통해 실제 문제에 적용해봄으로써 둘의 차이와 알고리즘 동작방식에 대해 확실하게 아는 계기가 되었다. 신희승 - 이진 트리를 구현하면서 트리의 구조를 파악하였고 그래프를 만들어 DFS, BFS의 방법으로 탐색하는 방법을 연습할 수 있었다. 이동헌 - 다양한 형태로 그래프를 작성해보았고 이 그래프롤 통해 DFS, BFS의 방법으로 탐색하는 방법을 연습할 수 있었다. 최현석 - 웹 크롤링 기법을 학습하였더니, 다양한 오픈 API에서 크롤링을 해보고 싶단 생각이 들었다. 고도현 - codekodo.tistory.com/5 신희승 - ciwekdo.tistory.com/4 이동헌 ..

    [코독하구만 팀] 2020.12.23(수) - 1주차 개인 결과

    BFS와 DFS를 개념과 실습 문제를 복습하고 백준 문제를 통해 실제 문제에 적용해봄으로써 둘의 차이와 알고리즘 동작방식에 대해 확실하게 아는 계기가 되었다. 1. 이웃 노드 찾기 (그래프 기본) def main(): n, m = map(int, input().split()) node = list(input().split()) node_dict = dict() for i in range(n): node_dict[node[i]] = [] for i in range(m): srt, dst = input().split() if dst not in node_dict[srt]: node_dict[srt].append(dst) find_node = input() print(len(node_dict[find_node..

    [코독하구만 팀] 2020.12.23(수) - 1주차 모임 목표

    [코독하구만 팀] 2020.12.23(수) - 1주차 모임 목표 고도현 - DFS와 BFS를 개념과 실습 문제를 복습하고 백준 문제를 통해 실제 문제에 적용해본다. 신희승 - 트리와 그래프의 자료구조를 이해하고 연습 문제를 통해 개념을 확립시킨다. 이동헌 - 깊이우선탐색과 너비우선탐색을 복습하고 실습 문제를 통해 체화한다. 최현석 - 여러 알고리즘의 시간복잡도를 계산하여 처리속도가 우수한 알고리즘을 선별한다. 웹 크롤링이 무엇인지 알아본다. 고도현 - codekodo.tistory.com/4 신희승 - ciwekdo.tistory.com/3 이동헌 - https://blog.naver.com/tortoise11/222183985820 최현석 - coderhs.tistory.com/3 비공개처리

    [코독하구만 팀] 2020.12.23(수) - 1주차 개인 목표

    목표 : BFS와 DFS를 개념과 실습 문제를 복습하고 백준 문제를 통해 실제 문제에 적용해본다. 실습은 총 3문제로 알고리즘 수업 시간이 진행되었던 실습 문제이다. 1. 이웃 노드 찾기 (그래프 기본) 입력 값은 다음과 같이 주어진다. 4 4 # N M AA BB CC DD # 노드의 개수 N 개 AA CC # 간선 정보 M 개 BB DD AA BB BB AA AA # 질의 노드 2. BFS (너비 우선 탐색) 입력 값은 다음과 같이 주어진다. 12 11 # N M A B C D E F G H I J K L # 노드의 개수 N 개 A B # 간선 정보 M 개 A C A D B E B F D G D H E I E J G K G L A # 질의 노드 3. DFS (깊이 우선 탐색) - 위 그래프와 동일 4..

    [브루트 포스 / Python] BOJ 7568 - 덩치

    www.acmicpc.net/problem/7568 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x,y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net 입력 첫 줄에는 전체 사람의 수 N이 주어진다. 그리고 이어지는 N개의 줄에는 각 사람의 몸무게와 키를 나타내는 양의 정수 x와 y가 하나의 공백을 두고 각각 나타난다. 출력 여러분은 입력에 나열된 사람의 덩치 등수를 구해서 그 순서대로 첫 줄에 출력해야 한다. 단, 각 덩치 등수는 공백문자로 분리되어야 한다. 해결 방법 리스트에 x, y 를 저장하고 반복문을 탐색한다. 해결 과정 이 문제를 두 번에..