89. 토마토(BFS 활용) (it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비) ★★★★★
#include #include using namespace std; int a[1000][1000]; int dis[1000][1000]; struct Tom { int x; int y; Tom(int x, int y) { this -> x = x; this -> y = y; } }; int main() { int m, n, res = 0; bool flag = true; int dx[4] = {-1, 0, 1, 0}; int dy[4] = {0, -1, 0, 1}; scanf("%d %d", &m, &n); // m과 n을 읽는 순서를 조심하자!!! queue Q; for(int i = 1; i
87. 섬나라 아일랜드(BFS 활용) (it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비) ★★★☆☆
#include #include using namespace std; int n, cnt = 0; struct Pos { int x; int y; Pos(int x, int y) { this -> x = x; this -> y = y; } }; int main() { scanf("%d", &n); int a[n+2][n+2]; // 외곽 라인은 전부 0으로 만들기 위해 int dx[8] = {0, 1, 1, 1, 0 ,-1 , -1, -1}; // x좌표의 상하좌우, 대각선 int dy[8] = {1, 1, 0, -1, -1, -1, 0, 1}; // y좌표의 상하좌우, 대각선 for(int i = 1; i