문제 풀이 방식 BFS 입력받기 기본적인 BFS 알고리즘에 대해 이해하고 있다면 구현에서는 전혀 고민할 것이 없다. 오히려 구현보다 더 시간을 썼던 것이 input하는 방식이였다. > Python 에서의 그래프 입력 JAVA 에서의 그래프 입력 보통 알고리즘을
🤢 기존 그래프 문제에 비해 특이점은 2차원 배열이 아니라 3차원 배열이라는 것을 인지해야 한다는 점이다.토마토들이 병렬적으로 각각 번지기 때문에 이를 고려하여 루프를 짜야한다앞뒤상하좌우 라는 방향벡터를 설정해야한다그외에는 기존 BFS 그래프 탐색과 동일하다고 보인다
문제 설명을 토대로 보았을 때 조합에 관한 문제임을 알 수 있다자바에서 조합을 구현하고자 할 때 두가지 방법이 있다 - 출처DFS 를 통한 백트래킹 방법해를 찾는 도중 해가 아니게 된다면, 되돌아가서 다시 해를 찾아가는 기법최적화 문제, 결정 문제에 주로 쓰임boole
2차원 배열 map 이 주어지고 이를 통하여 최단 거리로 갔을 때 가장 빠른 길을 반환한다만약 도달 할 수 없는 경우라면 -1 을 반환한다정석적인 그래프 문제 답게 BFS 를 이해한다면 난이도는 어렵지 않다핵심은 다음과 같다매칸 이동할 때마다 자신의 칸의 +1 로 바꾸
알고리즘을 지난 5개월 동안 놓고있다가 최근 들어 다시 잡기 시작하면서 조금씩 예전의 감을 찾아가고 있는듯 하다.네트워크 문제는 쉽게 말해 이어져 있는 노드들이 몇개가 있느냐를 묻는 문제이다DFS, BFS 다양한 방법들이 있지만 접근하기 쉬운 BFS 를 통해 너비우선
해당 문제도 BFS 로 접근할 수 있겠지만 구현에 초점을 두었을 때 DFS를 통한 깊이우선탐색이 직관적이라 DFS 로 접근하였다풀이에 앞서 미리 메모해가며 어떻게 풀 수 있는지 특이사항에 대해 기록하고 시작한다한번에 한개 글자 변경이 가능words 안의 단어로만 변환
문제 풀이 전 해당 문제의 특이점을 몇가지 짚고 갑니다1\. 항상 "ICN" 공항에서 출발합니다2\. 한번 이동한 경로는 다시 이동하지 않습니다3\. 양방향이 아닌 왼쪽에서 오른쪽으로 향하는 단방향입니다4\. 모든 경로를 이용하여야 합니다5\. 가능한 경로중 알파벳 순
문제에서 주어진 그래프의 최대 크기는 50\*50 사이즈그래프에서 순차적으로 도형들의 좌표를 통하여 테두리를 1, 안쪽을 2, 아무것도 없는 부분을 1 로 저장합니다즉, 아래와 같은 함수를 통해 순차적으로 도형을 그래프에 채워주었습니다아래는 bfs 함수입니다다른 테스트