목록BFS (6)
HIT해

https://www.acmicpc.net/problem/2468 접근방식BFS로 해결했고 비의 높이를 0 부터 최대 높이 이전까지 반복문을 돌려 각 상황별 영역을 비교해서 답을 구했다. import Foundationfunc main() { // 배열 크기 let size = Int(readLine()!)! var arr : [[Int]] = [] var maxHeight = 0 var safeArea = 0 let dx = [0,0,-1,1] let dy = [1,-1,0,0] for i in 0.. rain && visited[i][j] == false{ findSafeArea(..
https://www.acmicpc.net/problem/2178 DFS를 사용하면 비용을 한번 더 사용하기에 오답이 나온다.그렇기에 BFS 를 사용하고 방문배열없이 구현해보았다. 그리고 그래프가 아닌 2차원 배열이기에 방향 배열을 만들어주었다. import Foundationfunc main() { let NM = readLine()!.split(separator: " ").map{ Int($0)! } let (X,Y) = (NM[0], NM[1]) var miro : [[Int]] = [] for _ in 0.. Int{ var queue : [[Int]] = [] queue.append([0,0]) ..
https://www.acmicpc.net/problem/2606 import Foundationfunc main() { // 언래핑 guard let V = Int(readLine()!), let N = Int(readLine()!) else { return } var graph = [[Int]](repeating: [], count: V+1) for _ in 0..
https://www.acmicpc.net/problem/1260 Swift로 DFS BFS 는 처음 풀어본다. 한번 기본적인 준비물을 알아보자. DFS인접리스트시작 정점방문 배열 BFS인접리스트시작 정점방문 배열큐 DFS의 경우 방문 정점에 속한 하나의 정점의 또 다른 간선들을 다 확인하고 다음 간선을 확인하고BFS의 경우 방문 정점에 속한 모든 정점을 확인하고 연결된 다음 간선으로 이동한다. DFS 코드import Foundationfunc main() { let input = readLine()!.split(separator: " ").map { Int($0)! } let (N, M, V) = (input[0], input[1], input[2]) // 인접 리스트를 담은 그래프 ..

https://www.acmicpc.net/problem/2667 2667번: 단지번호붙이기 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여 www.acmicpc.net BFS를 활용해 풀이한 문제다. 연결되어있는 단지의 길이와 갯수를 출력한다. const filePath = process.platform === 'linux' ? '/dev/stdin' : 'input.txt'; const [n,...input] = require("fs") .readFileSync(filePath) .toString() .trim().split('\n'); const N = Num..

https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net package B7576; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Arrays; import java.util.LinkedList; import java.util.Queue; ..