[삼성기출] 백준 - C++ 상어 중학교
BFS와 구현문제이다. 1. Solution 코드 #include #include #include using namespace std; enum { BLACK = -1, RAINBOW = 0, NONE = -2 }; struct Point { int x, y; }; struct Group { int size; int rainbowCnt; }; const int MAX_N = 20; const int MAX_M = 5; const int dx[] = { -1, 1, 0, 0 }; const int dy[] = { 0, 0, -1, 1 }; int N, M, ans, cnt; int map[MAX_N][MAX_N]; vector blockList, targetList; bool visit[MAX_N][MAX..
2021. 10. 23.
[NHN] 모의 테스트 - C++ 행렬의 영역
DFS를 이용한 문제이다. 1. Solution 코드 #include #include #include #include using namespace std; const int MAX_N = 10; const int DIR = 4; const int dx[DIR] = {-1, 1, 0, 0}; const int dy[DIR] = {0, 0, -1, 1}; bool visit[MAX_N][MAX_N]; int BFS(int x, int y, int sizeOfMatrix, int **matrix){ if(!matrix[x][y] || visit[x][y]) return -1; int count = 1; queue q; q.push( make_pair(x, y) ); visit[x][y] = tr..
2021. 10. 22.