이번 가을학기 '문제 해결' 강의를 신청한 학생은 텀 프로젝트를 해야 한다. 팀원 수에는 제한이 없다. 모든 학생이 한 팀에 속해서 팀이 하나만 만들어질 수도 있다. 팀을 짜기 위해 모든 학생은 프로젝트를 함께하고 싶은 학생을 고른다. 단, 한 명만 고를 수 있다. 혼자 하고 싶은 학생은 자기 자신을 골라도 된다.
학생 s1,s2,…,sr가 한 팀이 되는 경우는 두 가지뿐이다. r=1이면서 s1이 s1을 고른 경우, 또는 s1이 s2를, s2가 s3을, ..., sr−1이 sr을, sr이 s1을 고른 경우다.
예를 들어 한 반에 학생이 7명 있고 1번부터 7번까지 번호를 붙였을 때, 선택 결과가 다음과 같다고 하자.
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|
| 3 | 1 | 3 | 7 | 3 | 4 | 6 |
이 결과에서는 (3)과 (4, 7, 6)이 팀을 이룬다. 1번, 2번, 5번은 어느 팀에도 속하지 못한다.
선택 결과가 주어지면 어느 팀에도 속하지 못한 학생이 몇 명인지 구하는 프로그램을 작성하라.
첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스의 첫째 줄에는 학생 수 n (2≤n≤100,000)이 주어진다. 둘째 줄에는 1번 학생부터 n번 학생까지 각자가 고른 학생의 번호가 순서대로 주어진다. 학생 번호는 1부터 n까지다.
각 테스트 케이스마다 어느 프로젝트 팀에도 속하지 못한 학생의 수를 한 줄에 하나씩 출력한다.