dfs
-
백준 - Puyo Puyo [11559]공부/baekjoon 문제 2019. 6. 13. 15:19
#include #include using namespace std; char map[12][6]; bool visit[12][6]; bool check = false; int result = 0; void down(int i, int j) { int top = i; int bot = i; int n = 0; for (int l = i; l >= 0; l--) { if (map[l][j] != '.') { map[bot - n][j] = map[l][j]; map[l][j] = '.'; n++; } } } void boom(int i, int j) { char name = map[i][j]; map[i][j] = '.'; if (i > 0) if (map[i - 1][j] == name) boom(i -..
-
백준 - 단지번호붙이기 [2667]공부/baekjoon 문제 2019. 6. 13. 15:16
#include #include #include using namespace std; char map[25][25]; char map2[25][25]; vector result; int num; int mapping(int i, int j, int island_num); int main() { int size = 0; int island_num = 1; cin >> size; for (int i = 0; i > map[i]; } for (int i = 0; i < size; i++) for (int j = 0; j < size; j++) map2[i][j] = '0'; for (int i = 0; i < size; i++) for (int j = 0; j < size;..
-
백준 - 알파벳 [1987]공부/baekjoon 문제 2019. 6. 13. 14:47
#include #include #include #include using namespace std; vector check; vector fin; char arr[20][20]; int r, c; bool flag = false; bool visit[20][20]; void dfs(int i, int j, int cnt) { visit[i][j] = true; flag = false; if (i > 0 && !visit[i-1][j]) { for (int k = 0; k < (int)check.size(); k++) if (check[k] == arr[i - 1][j]) { flag = true; break; } if (!flag) { check.push_back(arr[i - 1][j]); dfs(i..