BFS DFS(깊이우선탐색), BFS(너비우선탐색) 그래프와 트리 그래프(graph) 정점(node)과 그 정점을 연결하는 간선(edge)로 이루어진 자료구조의 일종 그래프를 탐색한다는 것은 하나의 정점으로부터 시작하여 차례대로 모든 정점들을 한 번씩 방문하는 것 트리 아주 간단한게만 말하자면, 그래프 중에서 방향성이 있는 비순환 그래프 ❗️그래프의 모든 정점 탐색 방법 그래프의 모든 정점 탐색 방법에도 여러 가지가 있다. 그중에서 가장 대표... DFSBFSBFS 백준 16234번 인구 이동 cpp python 시뮬레이션 구현 문제에 bfs 한스푼 얹은 느낌의 문제네요 로직을 설명해보겠습니다 인구 이동이 없을때까지 반복하기 때문에 while문안에 코드를 작성하고 한번의 반복문마다 인구 이동이 있었는지 검사를 합니다 만약 이번 턴에 한번도 인구이동이 없다면 break문으로 나옵니다 N*N크기의 땅을 이차원 배열에 저장을 해둡니다 동시에 똑같은 크기의 이차원 배열을 0으로 채워서 만... cpppythonbojsimulationBFSBFS [BOJ] 16928 뱀과 사다리 게임 BFS(깊이 우선 탐색) 생각회로 배열 두 개를 초기화한다. -- visitCount ( 방문 했는지, 안했는지 여부와 함께, 몇번 굴려야 가는지 ) -- snakeLadder ( 뱀과 사다리 if snakeLadder[20] = 10 then 20번엔 10으로 가는 뱀이 있다. 큐를 만든다. 1을 큐에 넣고, 반복문을 들어간다. queue pop 하고 6만큼 반복해서 주사위의 결과를 모두 ... G5백준BFSswfitBFS 백준 1697 문제 풀이 그리디로 푸는건가 싶었는데, 아니고 x-1, x+1, x*2 로 탐색을 뻗어나가면서 값을 찾으면 몇번째 탐색에 찾았는지 출력한다.... 문제풀이BFSBFS [백준] 7569 : 토마토 1인 노드들을 어떻게 한번에 가져가서 동서남북상하를 봐줘야 하는 건지 고민했음 -> 처음에 입력받았을 때 1인 것의 좌표를 넣는 리스트에 1 값을 가진 것들의 좌표를 모두 넣어줌! 그리고 bfs가 한 번 돌고 난 이후엔 변경된 값들을 담은 리스트를 매개변수로 해서 bfs를 계속 돌려줌! 결과 : 시간 초과(Python), 메모리 초과(PyPy) 개선해야 하는 부분 : 어떻게 1을 한번에 넣어... 다시풀문제그래프BFS백준코딩테스트BFS [백준] 16236_아기상어 python N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 아기 상어는 자신의 크기보다 큰 물고기가 있는 칸은 지나갈 수 없고, 나머지 칸은 모두 지나갈 수 있다. 아기 상어는 자신의 크기보다 작은 물고기만 먹을 수 있다. 따라서, 크기가 같은 물고기는 먹을 수 없지만, 그 물고기가 있는 칸은 지나갈 수 있다. 더 이상 먹을 수 있는 물고기가 공간에 없다면 아기 상어는 엄마 상어에게 도... bojpythonBFS구현백준BFS 그래프 탐색의 기본, DFS와 BFS DFS는 깊이 우선 탐색. 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘 스택 자료구조(혹은 재귀 함수) 이용 탐색 시작 노드를 스택에 삽입하고 방문 처리 스택의 최상단 노드에 방문하지 않은 인접한 노드가 하나라도 있으면 그 노드를 스택에 넣고 방문 처리. 방문하지 않은 인접 노드가 없으면 스택에서 최상단 노드를 꺼냄. 더 이상 2번의 과정을 수행할 수 없을 때까지 반복 너비 우선 탐색... 그래프 탐색BFS알고리즘DFSBFS [백준 13549 파이썬] 숨바꼭질 3 (골드 5, 다익스트라 or BFS) 알고리즘 유형 : 다익스트라 or BFS 다익스트라 풀이 BFS 풀이 SOLVE 1) 풀이 요약 (다익스트라 풀이) 이 문제는 가중치가 0 또는 1인 그래프로 생각할 수 있다. 가중치가 모두 0 또는 양수이고, 특정 노드에서 특정 노드까지의 최단 경로 가중치를 구하는 것이므로 다익스트라 알고리즘을 적용할 수 있다. 기존의 다익스트라 형태에서 조금 다른 점은, 그래프 간선 정보가 따로 주어지는... 파이썬ps알고리즘다익스트라BFS최단 경로백준코딩테스트BFS [algo] DFS, BFS란? 알고리즘BFSDFSBFS [백준] 17472번: 다리 만들기 2 DFS, BFS 탐색 MST 알고리즘 시간복잡도 O(nm)... BFSSMTkotlinBFS WEEK. 02 2022.04.08 TIL 먼저 들어 온 데이터가 먼저 나가는 형식(선입선출)의 자료구조로, 입구와 출구가 모두 뚫려 있는 터널과 같은 형태로 시각화 할 수 있음. DFS는 스택 자료구조(혹은 재귀 함수)를 이용하며, 구체적인 동작은 다음과 같음. 1) 탐색 시작 노드를 스택에 삽입하고 방문 처리를 함. 2) 스택의 최상단 노드에 방문하지 않은 인접한 노드가 하나라도 있으면 그 노드를 스택에 넣고 방문 처리를 함. B... DFSBFSBFS [백준] 1941번: 소문난 칠공주 조합과 BFS 탐색이 결합된 문제입니다. 처음엔 DFS 탐색 또는 BFS 탐색을 통해 Y가 4번 나오면 멈추고 총 7번의 탐색이 일어났을 때 정답 카운트를 높이는 백트래킹을 구현하려고 했지만, 아래와 같은 테스트 케이스는 DFS와 BFS를 통해 해결하지 못하는 한계가 있었습니다. 따라서 25개의 학생 중 7명을 선발하고, 7명 모두가 인접하여 존재하는지 확인하는 과정을 BFS 탐색을 통해 문... kotlincombinationBFSBFS [BOJ] 9019 DSLR BFS(깊이 우선 탐색) 생각회로 DP 였다면, '어떤 방식이 답에 가까운 식인가'가 명확해야 한다고 생각했다. 답을 구할 때 까지, 모든 경우를 생각해야 한다고 생각했다. -> BFS or DFS DFS 로 구현하면, DDDDD만 반복하다가 시간 다 잡아먹을 것 같다 -> BFS BFS 답게 큐를 구현했고, A의 값을 큐에 넣고, 답을 찾을 때 까지 반복했다. visit[10001] 배열로... G5swiftBFS백준BFS [ BOJ / Python ] 17142번 연구소 3 바이러스들의 위치를 저장할 리스트 viruses를 선언한다. n번 반복하는 i에 대한 for문을 돌린다. -> n번 반복하는 j에 대한 for문을 돌린다. --> 만약 grid[i][j]가 2와 같을 경우, ---> viruses에 (i, j)를 넣는다. combinations를 저장할 리스트 cases를 선언한다. get_combs 함수를 cur, result를 인자로 갖도록 선언한다. -... python삼성 기출bojback trackingBFSBFS [ BOJ / Python ] 16234번 인구 이동 이번 문제는 삼성 기출 문제로 BFS를 통해 개방할 수 있는 국경선들을 모두 체크하고, 현재 위치의 나라와 연결된 모든 나라들을 구하여 그 나라들의 인구수를 평균값으로 갱신해준다. n, l, r을 입력받는다. ground를 입력받는다. dy, dx에 4가지 방향을 저장한다. bfs함수를 sy, sx를 인자로 갖도록 선언한다. -> q를 deque로 선언한다. -> q에 (sy, sx)를 넣는... 삼성 기출pythonBFSbojBFS BJ17471 게리맨더링 조합BFS백준 알고리즘BFS BJ2636 치즈 토마토 문제와 거의 유사하다. BFS를 이용해서 구현하면 된다.... BFS백준 알고리즘BFS BJ7576 토마토 기본적인 BFS 문제이다. 익은 토마토를 리스트에 담아두고, BFS를 활용하여 토마토가 모두 익게 되는 일수를 출력하면 된다.... BFS백준 알고리즘BFS 백준 1260 DFS와 BFS JAVA 백준JavaDFS1260BFS1260 [알고리즘]백준 18352번 특정 거리의 도시 찾기 BFS 개념을 활용하는 대중적인 문제이다. 대중적인 문제임에도 시간 초과를 5번은 넘게 본것 같은데 처음엔 알고리즘을 잘못 짠 줄 알았는데 이유는 단순히 입력을 받을때 input( )을 사용하였기 때문이었다. 문제를 보면 M(경로의 수)를 최대 1,000,000개를 입력받을 수 있어야 하는데 시간 제한이 2초이므로 input()을 사용하면 시간 초과로 인하여 통과하지 못한다. 이 문제를 풀기... 알고리즘BFSBFS <Baekjoon> #17822 Deque, BFS, Simulation_원판 돌리기 c++ ⭕ Solution & Idea 원판을 한 칸씩 돌릴 때마다 원판의 마지막 값이 가장 앞으로 오고, 앞의 값이 마지막 값으로 간다는 점에서 deque 자료 구조를 이용한다 이웃한 원판의 수를 지울 때 bfs, 너비 우선 탐색을 이용하는데 이때 같은 원판 내에서 처음 끝과 마지막 값이 이웃한다는 점을 주의한다 ⭕ 1. roate 시계 방향으로 회전했을 경우 원판의 변화를 보면 가장 마지막 값이... baekjoonalgorithmDeque"삼성SW"simulationBFS"삼성SW" <Baekjoon> #23290 Simulation, BFS, DFS, Backtracking_마법사 상어와 복제 c++ 따라서 물고기 번호 vector<int> fnum, scent_time을 저장하는 맵을 만들어준다 현재 시간을 Time 이라고 두고, 물고기가 상어에게 잡혀 사라질 때 scent_time=Time 을 넣어준다. 그러고 후에 두 번 전 연습에서 생긴 물고기의 냄새가 격자에서 사라질 때, Time-scent_time==2인 경우 scent_time=0으로 만들어주는 방법을 사용한다 1. star... DFSalgorithmBacktracking"삼성SW"simulationBFS"삼성SW" SWEA1861 정사각형 방 SWEA 알고리즘DFS2차원 배열BFS2차원 배열 [백준] 10026번: 적록색약 문제 풀이 파이썬 문제 링크 풀이 방식 bfs 방식으로 적록색맹이지 않은 사람의 영역 갯수를 구한다. visited 를 초기화한 후에 적록색맹의 영역 갯수를 구한다. 전체 코드... beakjoon백준BFS골드5BFS [백준] 21606 : 아침 산책 그래프BFSDFS백준코딩테스트BFS BJ4485 녹색 옷 입은 애가 젤다지? 각 칸을 이동할 때마다 비용이 필요하고, 목적지로 가는 데에 최소 비용을 구하는 문제이다. DP와 BFS로 각 칸마다 필요한 최소거리를 갱신해주는 방식과 BFS나 DFS를 활용해 연산해 주는 방식이 있다. 두가지 코드를 모두 작성해보고, 어떤 이점이 있는 지 알아볼 수 있는 문제였다. 먼저 첫번째 코드는 DFS를 활용해 연산한 방식이다. 코드는 짧고 작성하기 간단하지만, 매 한칸마다 계속 연... 백준 알고리즘BFSDPBFS BJ1600 말이 되고픈 원숭이 BFS를 사용해 구현하는 문제이다. 하지만 점프 횟수라는 조건 때문에 방문처리를 할 때, 점프 횟수에 따라 각각의 맵에 따로 처리를 해주어야 한다. boolean visit 배열을 3차원으로 만들어 해결해주었다.... 백준 알고리즘BFSBFS BJ1260 DFS와 BFS DFS 깊이우선탐색과 BFS 너비우선탐색을 알고 구현할 수 있는지를 묻는 문제다. 입력 받은 값으로 인접행렬을 만든 후에 BFS를 Queue로 구현하고, DFS를 재귀함수로 구현하면 된다.... 백준 알고리즘BFSDFSBFS BJ16236 아기 상어 NxN 사이즈의 맵과 그 안에 물고기들과 상어의 위치가 주어진다. 상어는 자신보다 작은 물고기만 먹을 수 있고, 상어는 먹은 물고기의 수에 따라 크기가 증가한다. 문제는 상어가 물고기를 먹을 수 있는 시간을 요구한다. 물고기들을 리스트에 담아 관리하고, BFS를 이용해 구현했다.... 백준 알고리즘BFSBFS 이전 기사 보기
DFS(깊이우선탐색), BFS(너비우선탐색) 그래프와 트리 그래프(graph) 정점(node)과 그 정점을 연결하는 간선(edge)로 이루어진 자료구조의 일종 그래프를 탐색한다는 것은 하나의 정점으로부터 시작하여 차례대로 모든 정점들을 한 번씩 방문하는 것 트리 아주 간단한게만 말하자면, 그래프 중에서 방향성이 있는 비순환 그래프 ❗️그래프의 모든 정점 탐색 방법 그래프의 모든 정점 탐색 방법에도 여러 가지가 있다. 그중에서 가장 대표... DFSBFSBFS 백준 16234번 인구 이동 cpp python 시뮬레이션 구현 문제에 bfs 한스푼 얹은 느낌의 문제네요 로직을 설명해보겠습니다 인구 이동이 없을때까지 반복하기 때문에 while문안에 코드를 작성하고 한번의 반복문마다 인구 이동이 있었는지 검사를 합니다 만약 이번 턴에 한번도 인구이동이 없다면 break문으로 나옵니다 N*N크기의 땅을 이차원 배열에 저장을 해둡니다 동시에 똑같은 크기의 이차원 배열을 0으로 채워서 만... cpppythonbojsimulationBFSBFS [BOJ] 16928 뱀과 사다리 게임 BFS(깊이 우선 탐색) 생각회로 배열 두 개를 초기화한다. -- visitCount ( 방문 했는지, 안했는지 여부와 함께, 몇번 굴려야 가는지 ) -- snakeLadder ( 뱀과 사다리 if snakeLadder[20] = 10 then 20번엔 10으로 가는 뱀이 있다. 큐를 만든다. 1을 큐에 넣고, 반복문을 들어간다. queue pop 하고 6만큼 반복해서 주사위의 결과를 모두 ... G5백준BFSswfitBFS 백준 1697 문제 풀이 그리디로 푸는건가 싶었는데, 아니고 x-1, x+1, x*2 로 탐색을 뻗어나가면서 값을 찾으면 몇번째 탐색에 찾았는지 출력한다.... 문제풀이BFSBFS [백준] 7569 : 토마토 1인 노드들을 어떻게 한번에 가져가서 동서남북상하를 봐줘야 하는 건지 고민했음 -> 처음에 입력받았을 때 1인 것의 좌표를 넣는 리스트에 1 값을 가진 것들의 좌표를 모두 넣어줌! 그리고 bfs가 한 번 돌고 난 이후엔 변경된 값들을 담은 리스트를 매개변수로 해서 bfs를 계속 돌려줌! 결과 : 시간 초과(Python), 메모리 초과(PyPy) 개선해야 하는 부분 : 어떻게 1을 한번에 넣어... 다시풀문제그래프BFS백준코딩테스트BFS [백준] 16236_아기상어 python N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 아기 상어는 자신의 크기보다 큰 물고기가 있는 칸은 지나갈 수 없고, 나머지 칸은 모두 지나갈 수 있다. 아기 상어는 자신의 크기보다 작은 물고기만 먹을 수 있다. 따라서, 크기가 같은 물고기는 먹을 수 없지만, 그 물고기가 있는 칸은 지나갈 수 있다. 더 이상 먹을 수 있는 물고기가 공간에 없다면 아기 상어는 엄마 상어에게 도... bojpythonBFS구현백준BFS 그래프 탐색의 기본, DFS와 BFS DFS는 깊이 우선 탐색. 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘 스택 자료구조(혹은 재귀 함수) 이용 탐색 시작 노드를 스택에 삽입하고 방문 처리 스택의 최상단 노드에 방문하지 않은 인접한 노드가 하나라도 있으면 그 노드를 스택에 넣고 방문 처리. 방문하지 않은 인접 노드가 없으면 스택에서 최상단 노드를 꺼냄. 더 이상 2번의 과정을 수행할 수 없을 때까지 반복 너비 우선 탐색... 그래프 탐색BFS알고리즘DFSBFS [백준 13549 파이썬] 숨바꼭질 3 (골드 5, 다익스트라 or BFS) 알고리즘 유형 : 다익스트라 or BFS 다익스트라 풀이 BFS 풀이 SOLVE 1) 풀이 요약 (다익스트라 풀이) 이 문제는 가중치가 0 또는 1인 그래프로 생각할 수 있다. 가중치가 모두 0 또는 양수이고, 특정 노드에서 특정 노드까지의 최단 경로 가중치를 구하는 것이므로 다익스트라 알고리즘을 적용할 수 있다. 기존의 다익스트라 형태에서 조금 다른 점은, 그래프 간선 정보가 따로 주어지는... 파이썬ps알고리즘다익스트라BFS최단 경로백준코딩테스트BFS [algo] DFS, BFS란? 알고리즘BFSDFSBFS [백준] 17472번: 다리 만들기 2 DFS, BFS 탐색 MST 알고리즘 시간복잡도 O(nm)... BFSSMTkotlinBFS WEEK. 02 2022.04.08 TIL 먼저 들어 온 데이터가 먼저 나가는 형식(선입선출)의 자료구조로, 입구와 출구가 모두 뚫려 있는 터널과 같은 형태로 시각화 할 수 있음. DFS는 스택 자료구조(혹은 재귀 함수)를 이용하며, 구체적인 동작은 다음과 같음. 1) 탐색 시작 노드를 스택에 삽입하고 방문 처리를 함. 2) 스택의 최상단 노드에 방문하지 않은 인접한 노드가 하나라도 있으면 그 노드를 스택에 넣고 방문 처리를 함. B... DFSBFSBFS [백준] 1941번: 소문난 칠공주 조합과 BFS 탐색이 결합된 문제입니다. 처음엔 DFS 탐색 또는 BFS 탐색을 통해 Y가 4번 나오면 멈추고 총 7번의 탐색이 일어났을 때 정답 카운트를 높이는 백트래킹을 구현하려고 했지만, 아래와 같은 테스트 케이스는 DFS와 BFS를 통해 해결하지 못하는 한계가 있었습니다. 따라서 25개의 학생 중 7명을 선발하고, 7명 모두가 인접하여 존재하는지 확인하는 과정을 BFS 탐색을 통해 문... kotlincombinationBFSBFS [BOJ] 9019 DSLR BFS(깊이 우선 탐색) 생각회로 DP 였다면, '어떤 방식이 답에 가까운 식인가'가 명확해야 한다고 생각했다. 답을 구할 때 까지, 모든 경우를 생각해야 한다고 생각했다. -> BFS or DFS DFS 로 구현하면, DDDDD만 반복하다가 시간 다 잡아먹을 것 같다 -> BFS BFS 답게 큐를 구현했고, A의 값을 큐에 넣고, 답을 찾을 때 까지 반복했다. visit[10001] 배열로... G5swiftBFS백준BFS [ BOJ / Python ] 17142번 연구소 3 바이러스들의 위치를 저장할 리스트 viruses를 선언한다. n번 반복하는 i에 대한 for문을 돌린다. -> n번 반복하는 j에 대한 for문을 돌린다. --> 만약 grid[i][j]가 2와 같을 경우, ---> viruses에 (i, j)를 넣는다. combinations를 저장할 리스트 cases를 선언한다. get_combs 함수를 cur, result를 인자로 갖도록 선언한다. -... python삼성 기출bojback trackingBFSBFS [ BOJ / Python ] 16234번 인구 이동 이번 문제는 삼성 기출 문제로 BFS를 통해 개방할 수 있는 국경선들을 모두 체크하고, 현재 위치의 나라와 연결된 모든 나라들을 구하여 그 나라들의 인구수를 평균값으로 갱신해준다. n, l, r을 입력받는다. ground를 입력받는다. dy, dx에 4가지 방향을 저장한다. bfs함수를 sy, sx를 인자로 갖도록 선언한다. -> q를 deque로 선언한다. -> q에 (sy, sx)를 넣는... 삼성 기출pythonBFSbojBFS BJ17471 게리맨더링 조합BFS백준 알고리즘BFS BJ2636 치즈 토마토 문제와 거의 유사하다. BFS를 이용해서 구현하면 된다.... BFS백준 알고리즘BFS BJ7576 토마토 기본적인 BFS 문제이다. 익은 토마토를 리스트에 담아두고, BFS를 활용하여 토마토가 모두 익게 되는 일수를 출력하면 된다.... BFS백준 알고리즘BFS 백준 1260 DFS와 BFS JAVA 백준JavaDFS1260BFS1260 [알고리즘]백준 18352번 특정 거리의 도시 찾기 BFS 개념을 활용하는 대중적인 문제이다. 대중적인 문제임에도 시간 초과를 5번은 넘게 본것 같은데 처음엔 알고리즘을 잘못 짠 줄 알았는데 이유는 단순히 입력을 받을때 input( )을 사용하였기 때문이었다. 문제를 보면 M(경로의 수)를 최대 1,000,000개를 입력받을 수 있어야 하는데 시간 제한이 2초이므로 input()을 사용하면 시간 초과로 인하여 통과하지 못한다. 이 문제를 풀기... 알고리즘BFSBFS <Baekjoon> #17822 Deque, BFS, Simulation_원판 돌리기 c++ ⭕ Solution & Idea 원판을 한 칸씩 돌릴 때마다 원판의 마지막 값이 가장 앞으로 오고, 앞의 값이 마지막 값으로 간다는 점에서 deque 자료 구조를 이용한다 이웃한 원판의 수를 지울 때 bfs, 너비 우선 탐색을 이용하는데 이때 같은 원판 내에서 처음 끝과 마지막 값이 이웃한다는 점을 주의한다 ⭕ 1. roate 시계 방향으로 회전했을 경우 원판의 변화를 보면 가장 마지막 값이... baekjoonalgorithmDeque"삼성SW"simulationBFS"삼성SW" <Baekjoon> #23290 Simulation, BFS, DFS, Backtracking_마법사 상어와 복제 c++ 따라서 물고기 번호 vector<int> fnum, scent_time을 저장하는 맵을 만들어준다 현재 시간을 Time 이라고 두고, 물고기가 상어에게 잡혀 사라질 때 scent_time=Time 을 넣어준다. 그러고 후에 두 번 전 연습에서 생긴 물고기의 냄새가 격자에서 사라질 때, Time-scent_time==2인 경우 scent_time=0으로 만들어주는 방법을 사용한다 1. star... DFSalgorithmBacktracking"삼성SW"simulationBFS"삼성SW" SWEA1861 정사각형 방 SWEA 알고리즘DFS2차원 배열BFS2차원 배열 [백준] 10026번: 적록색약 문제 풀이 파이썬 문제 링크 풀이 방식 bfs 방식으로 적록색맹이지 않은 사람의 영역 갯수를 구한다. visited 를 초기화한 후에 적록색맹의 영역 갯수를 구한다. 전체 코드... beakjoon백준BFS골드5BFS [백준] 21606 : 아침 산책 그래프BFSDFS백준코딩테스트BFS BJ4485 녹색 옷 입은 애가 젤다지? 각 칸을 이동할 때마다 비용이 필요하고, 목적지로 가는 데에 최소 비용을 구하는 문제이다. DP와 BFS로 각 칸마다 필요한 최소거리를 갱신해주는 방식과 BFS나 DFS를 활용해 연산해 주는 방식이 있다. 두가지 코드를 모두 작성해보고, 어떤 이점이 있는 지 알아볼 수 있는 문제였다. 먼저 첫번째 코드는 DFS를 활용해 연산한 방식이다. 코드는 짧고 작성하기 간단하지만, 매 한칸마다 계속 연... 백준 알고리즘BFSDPBFS BJ1600 말이 되고픈 원숭이 BFS를 사용해 구현하는 문제이다. 하지만 점프 횟수라는 조건 때문에 방문처리를 할 때, 점프 횟수에 따라 각각의 맵에 따로 처리를 해주어야 한다. boolean visit 배열을 3차원으로 만들어 해결해주었다.... 백준 알고리즘BFSBFS BJ1260 DFS와 BFS DFS 깊이우선탐색과 BFS 너비우선탐색을 알고 구현할 수 있는지를 묻는 문제다. 입력 받은 값으로 인접행렬을 만든 후에 BFS를 Queue로 구현하고, DFS를 재귀함수로 구현하면 된다.... 백준 알고리즘BFSDFSBFS BJ16236 아기 상어 NxN 사이즈의 맵과 그 안에 물고기들과 상어의 위치가 주어진다. 상어는 자신보다 작은 물고기만 먹을 수 있고, 상어는 먹은 물고기의 수에 따라 크기가 증가한다. 문제는 상어가 물고기를 먹을 수 있는 시간을 요구한다. 물고기들을 리스트에 담아 관리하고, BFS를 이용해 구현했다.... 백준 알고리즘BFSBFS 이전 기사 보기