[BOJ/백준] 2606. 바이러스
출처
https://www.acmicpc.net/problem/2606
과정
1. DFS
- 방문했는지 확인할 check 리스트를 만들어주고
바이러스에 감염된 수를 저장할 cnt를 0 으로 초기화해준다. - dfs()함수를 만들어준다.
- dfs에서 x를 방문했으니 True로 해주고 a[x]에 i에 대해 방문하지 않았다면 방문True를 해주고 cnt에 1을 더한후 dfs(i)에 대해서 실행시켜준다.
- cnt값을 출력해준다.
2. BFS
- 방문했는지 확인할 check 리스트를 만들어주고
바이러스에 감염된 수를 저장할 cnt를 0 으로 초기화해준다. - bfs()함수를 만들어준다.
- q를 만들어주고 x를 q에 추가해주고 check[x]에 대해 True해준다.
- a[x]에 i에 대해 방문하지 않았다면 방문True를 해주고 cnt에 1을 더하고 q에 i를 추가해준다.
- cnt 값을 출력해준다.
정답 코드
-
DFS
-
BFS