Submission #1185098

#TimeUsernameProblemLanguageResultExecution timeMemory
1185098susmanTracks in the Snow (BOI13_tracks)C++20
29.58 / 100
783 ms782520 KiB
#include <iostream> #include <vector> using namespace std; int rows, cols; vector<string> grid; vector<vector<bool>> visited; void dfs(int i, int j, char type) { if (i < 0 || i >= rows || j < 0 || j >= cols) return; if (visited[i][j] || grid[i][j] != type) return; visited[i][j] = true; dfs(i+1, j, type); dfs(i-1, j, type); dfs(i, j+1, type); dfs(i, j-1, type); } int main() { cin >> rows >> cols; grid.resize(rows); visited.assign(rows, vector<bool>(cols, false)); for (int i = 0; i < rows; i++) { cin >> grid[i]; } int count = 0; for (int i = 0; i < rows; i++) { for (int j = 0; j < cols; j++) { if (grid[i][j] != '.' && !visited[i][j]) { count++; dfs(i, j, grid[i][j]); } } } cout << count << endl; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...