9466번(사이클 찾기)
·
CS 이론/알고리즘
https://www.acmicpc.net/problem/9466 9466번: 텀 프로젝트 이번 가을학기에 '문제 해결' 강의를 신청한 학생들은 텀 프로젝트를 수행해야 한다. 프로젝트 팀원 수에는 제한이 없다. 심지어 모든 학생들이 동일한 팀의 팀원인 경우와 같이 한 팀만 있을 www.acmicpc.net 이 문제는 너무 어려웠다.. 그래서 결국 해설을 봤다.. 처음에 내가 구현한 방법은 단순히 모든 DFS를 다 돌아서 사이클을 찾아내는 방식으로 했다. 그래서 시간초과가 났다. 그래서 시간초과를 해결하기 위해서는 사이클이 있는 경우 사이클을 이루는 갯수를 세고, 이 과정에서 사용한 노드는 더 이상방문할 필요없는 노드로 처리하여 중복적으로 탐색하는 것을 막아야 했다. 예를 들어 2->1->3->3과 1->..