Advertisement
Guest User

werwer

a guest
Jun 20th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.84 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int g[4] = {0,0,1,-1};
  4. int h[4] = {1,-1,0,0};
  5. int n,m,visited[22][22];
  6. char a[22][22];
  7. void DFS(int nodei, int nodej){
  8. visited[nodei][nodej] = 1;
  9. for(int i = 0; i < 4; i++){
  10. int x = nodei + g[i];
  11. int y = nodej + h[i];
  12. if(x > 0 && x <= n && y > 0 && y <= m){
  13. if(!visited[x][y] && a[x][y] == '#'){
  14. DFS(x,y);
  15. }
  16. }
  17. }
  18. }
  19. int main() {
  20. cin >> n >> m;
  21. for(int i = 1; i <= n; i++){
  22. for(int j = 1; j <= m; j++){
  23. cin >> a[i][j];
  24. }
  25. }
  26. int say = 0;
  27. for(int i = 1; i <= n; i++){
  28. for(int j = 1; j <= m; j++){
  29. if(!visited[i][j] && a[i][j] == '#'){
  30. DFS(i,j);
  31. say++;
  32. }
  33. }
  34. }
  35. cout << say;
  36. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement