BFS17 [BAEKJOON]14502 연구소 - Python 문제 요약 알고리즘 분류:BFS, 시뮬레이션 난이도: Gold4 문제내용: 0은 길 1은 벽이다. 벽은 한번 부수고 이동가능하다. (0, 0) ~ (N, M)까지의 거리를 구해라 사이트: https://www.acmicpc.net/problem/14502 문제풀이 이번에는 문제 유형은 그래프 탐색중에 BFS탐색 알고리즘이다. BFS 탐색 알고리즘에 대한 설명은 여기에서 확인 해보면된다. 이번 문제는 가로세로 최대 길이가 8이라서 시간 복잡도에 제한은 없지만 구현난이도가 있어서 구현 하는 방법만 알면 쉽게 풀수 있다고 생각한다. 문제 접근방법 처음에 재귀 호출을 하는데 벽을 3개 만든다고 (0, 0)부터 시작해서 4가지 방향 탐색한후 백트레킹 방식으로 돌아올때 벽을 빼고 하면 안된다. 그 이유는 보면 (0.. 2023. 1. 11. [BAEKJOON]16953 A → B 문제 요약 알고리즘 분류: dfs 난이도: Silver2 문제내용: 아래와 같이 2가지 연산이 가능하다. ×2 1을 오른쪽추가한다. A, 에서 B까지 최소 몇번 연산가능한지 구해라. 사이트: https://www.acmicpc.net/problem/16953 16953번: A → B 첫째 줄에 A, B (1 ≤ A < B ≤ 109)가 주어진다. www.acmicpc.net 문제풀이 이번 문제는 dfs 응용하는 문제이다. dfs 대한설명은 여기에서 확인 해보면 된다. 문제 접근 방법 bfs를 응용하는 것인데 위 그림 처럼 queue에 현재 값을 연산후 B보다 작거나 같을때 queue에 저장하면 하고 현재 값 연산 횟수에 +1을 더하면 끝이다. from collections import deque A, B.. 2023. 1. 10. [BAEKJOON]2206 벽 부수고 이동하기 - Python 문제 요약 알고리즘 분류:BFS, 시뮬레이션 난이도: Gold3 문제내용: 0은 길 1은 벽이다. 벽은 한번 부수고 이동가능하다. (0, 0) ~ (N, M)까지의 거리를 구해라 사이트: https://www.acmicpc.net/problem/2206 2206번: 벽 부수고 이동하기 N×M의 행렬로 표현되는 맵이 있다. 맵에서 0은 이동할 수 있는 곳을 나타내고, 1은 이동할 수 없는 벽이 있는 곳을 나타낸다. 당신은 (1, 1)에서 (N, M)의 위치까지 이동하려 하는데, 이때 최단 경로 www.acmicpc.net 문제풀이 이번에는 문제 유형은 그래프 탐색중에 BFS탐색 알고리즘이다. BFS 탐색 알고리즘에 대한 설명은 여기에서 확인 해보면된다. import sys from collections i.. 2022. 12. 26. [BAEKJOON] 13549 숨바꼭질 3 문제 요약 알고리즘 분류: BFS 난이도: Gold5 문제내용: 위치가 X일때 X - 1, X + 1 이동하면 1초 X * 2는 0초 걸린다. 현재위치 N일때 K까지 이동하는데 최소 시간을 구해라 사이트: https://www.acmicpc.net/problem/13549 13549번: 숨바꼭질 3 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net 문제풀이 이번에는 문제 유형은 그래프 탐색 관련 문제이다. 다이스트라 알고리즘으로도 풀수 있는데 그보다 구현이 더 쉬운 BFS로 풀수 있다. BFS 알고리즘 관.. 2022. 12. 20. [알고리즘 이론] 넓이 우선 탐색(BFS) 이론 이번에 볼 자료구조는 넓이 우선 탐색(BFS)이다. 깊이 우선 탐색은 영어로 Breadth First Search이고 줄어서 BFS라고 많이 부른다. 그래프 탐색 알고리즘 중 하나인데 그래프 말고도 트리에서도 적용이 된다. 반대로 넓이 우선 탐색(BFS)도 있는데 코드 테스트에서도 BFS 관련 문제가 많이 나온다. 그래서 BFS알고리즘은 다른 알고리즘 보다 많이 공부해야되고 관련 문제들 많이 풀어야 한다. BFS 알기 위해서는 트리, 그래프, 큐 세가지 이론을 우선 적으로 알아야 한다. 그리고 그래프 전체적으로 탐색할때 DFS랑 BFS 속도 차이는 크게 없는 BFS가 속도가 더 빠르기 때문에 BFS 확실하게 숙지해야한다. 자세한 내용은 아래사이트에 찾아 보면된다. 시간되면 자세하게 설명하겠습니다. .. 2022. 12. 20. 이전 1 2 3 다음