백준 #14502 연구소
백준 #14502 연구소 연구소에 벽을 세 개 세울 수 있는데, 세 개를 세울 수 있는 모든 경우의 수에 대해 바이러스가 퍼진 연구소를 BFS로 계산해 안전 영역의 최댓값을 출력하면 된다. 벽을 세우는 조합은 재귀함수로 처리했다. #include <iostream> #include <cstring> #include <q...
백준 #14502 연구소 연구소에 벽을 세 개 세울 수 있는데, 세 개를 세울 수 있는 모든 경우의 수에 대해 바이러스가 퍼진 연구소를 BFS로 계산해 안전 영역의 최댓값을 출력하면 된다. 벽을 세우는 조합은 재귀함수로 처리했다. #include <iostream> #include <cstring> #include <q...
백준 #11724 연결 요소의 개수 연결 요소의 개수를 구하는 문제. BFS 또는 DFS로 구할 수 있다. DFS로 풀었다. #include <iostream> #include <cstring> #include <vector> #include <bits/stdc++.h> using namespace s...
백준 #1012 유기농 배추 배추 덩어리 개수 세는 문제. BFS로 풀었다. #include <iostream> #include <cstring> #include <queue> #include <bits/stdc++.h> using namespace std; int T, M, N, K; int boa...
백준 #1697 숨바꼭질 BFS 문제 #include <iostream> #include <cstring> #include <queue> using namespace std; int N, K; int visit[100001]; int bfs() { queue<int> q; visit[N...
백준 #7576 토마토 BFS 문제. 처음부터 익어있는 토마토를 큐에 전부 넣고 인접 토마토가 익지 않았다면 큐에 넣는 식으로 BFS를 진행해 익은 토마토 개수가 전체 토마토 개수가 되면 depth를 반환한다. #include <iostream> #include <cstring> #include <queue> #in...
백준 #2667 단지번호붙이기 1의 덩어리 개수와 덩어리 내 1의 개수를 오름차순으로 출력하는 문제다. BFS 또는 DFS로 해결 가능한데, BFS로 풀었다. #include <iostream> #include <cstring> #include <cstdio> #include <queue> #includ...
백준 #13460 구슬 탈출 2 빨간 구슬과 파란 구슬이 있는 판을 기울여 빨간 구슬이 구멍에 빠지게 하는 최소 기울임 횟수를 구하는 문제. BFS를 사용하여 최소 횟수를 구할 수 있다. 구슬이 두 개여서 한 번 기울일 때마다 두 구슬의 좌표를 각각 구해주고 겹치지 않게 해주어야 한다. #include <iostream> #inclu...
백준 #10773 제로 스택을 사용하는 문제. 0을 입력 받으면 pop, 그렇지 않으면 push하고 스택에 남아있는 정수의 합을 출력한다. #include <iostream> #include <stack> #include <bits/stdc++.h> using namespace std; int K; stack&l...
백준 #1915 가장 큰 정사각형 0과 1로 된 배열에서 1로 이루어진 가장 큰 정사각형의 크기를 구하는 문제. 배열 dp에 해당 좌표를 우측 하단으로 하는 가장 큰 정사각형의 한 변의 길이를 저장한다. 세 좌표로 만들 수 있는 정사각형의 한 변의길이의 최솟값 + 1 세 좌표로 만들 수 있는 정사각형의 한 변의...dp[x][y] = m...