정점의 개수와 간선의 개수, 그리고 시작 정점 번호를 첫 줄에 입력으로 주고, 그 다음 간선의 개수에 해당하는 줄만큼 간선이 연결된 두 정점의 번호가 입력으로 주어진다.이후 깊이우선탐색(depth first search)와 너비우선탐색(breadth first sear
백준 1074번:z 해당 문제는 크게 2가지 방법으로 풀 수 있다. 먼저 분할 정복 풀이부터 살펴보자. 분할 정복(Divide and Conquer)은 문제를 작은 문제로 재귀적으로 쪼개어, 각각을 독립적으로 해결해 마지막으로 병합하여 하나의 큰 문제를 효과적으로
백준 2579번: 계단 오르기위 문제를 간단히 요약하면 다음과 같다. 제한된 개수의 계단이 있는데, 각 계단마다 점수가 있고, 가장 마지막 계단인 도착점에 왔을 때 극대화된 점수는 몇 점인지 묻는 문제이다.이때, 계단을 오르는 데에는 3가지 규칙이 있다.계단은 한 번에
백준 1389번: 케빈 베이컨의 6단계 법칙각 사람을 노드로, 관계를 간선으로 표현할 수 있는 그래프 문제. 너비 우선 탐색인 bfs함수를 만들어서 문제를 풀었다. bfs는 파이썬에서 일반적으로 deque 객체를 queue로 이용하여 구현한다.간선의 수가 비교적 밀도가
백준 18110번 : 쉽고 간단한 문제인데, 이상하게 자꾸 틀려서 당황했던 문제였다.문제를 간단히 설명하면 다음과 같다.N명의 사람이 어떤 한 문제에 대한 점수를 매긴다.해당 문제에 대한 난이도는 N명의 점수들의 절삭평균이다.절삭평균이란, 상위/하위 15%를 뺀 산술평
동적 계획법(DP) 문제 (+ BFS)
💡 문제 설명 전형적인 그래프 탐색 문제. Vertex와 Edge가 주어지면 특정 Vertex(문제에서는 1)로부터 갈 수 있는 Vertex의 총 개수를 구하면 된다. 💡 풀이 및 코드 간단하게 BFS와 DFS로 풀었다.
NxM의 격자를 입력으로 받고, 격자의 좌상단에서 우하단으로 가는 최소 칸 수를 구하는 문제이다.최소 경로 문제이고, 또 미로를 무방향 그래프로 나타낼 수 있기 때문에 자연스럽게 BFS(Breadth first search)를 활용해 풀고자 했다.풀고 난 후, 다른 사