CODE FESTIVAL 2016 qual A

B - 仲良しうさぎ / Friendly Rabbits


Time limit時間制限 : 2sec / Memory limitメモリ制限 : 256MB

配点 : 200

問題文

N 匹のうさぎがいます。 うさぎには 1 から N まで番号が振られています。

1≤i≤N について、うさぎ i はうさぎ a_i が好きです。 ただし、自分自身が好きなうさぎはいません。 すなわち、a_i≠i です。

うさぎ i とうさぎ j のペア (i,j) (i<j) が次の条件を満たすとき、ペア (i,j) は仲良しであるといいます。

  • うさぎ i はうさぎ j が好きであり、うさぎ j はうさぎ i が好きである。

仲良しなペアの個数を求めてください。

制約

  • 2≤N≤10^5
  • 1≤a_i≤N
  • a_i≠i

入力

入力は以下の形式で標準入力から与えられる。

N
a_1 a_2 ... a_N

出力

仲良しなペアの個数を出力してください。


入力例 1

4
2 1 4 3

出力例 1

2

仲良しなペアは (1,2)(3,4)2 個です。


入力例 2

3
2 3 1

出力例 2

0

仲良しなペアはありません。


入力例 3

5
5 5 5 5 1

出力例 3

1

仲良しなペアは (1,5)1 個です。

Score : 200 points

Problem Statement

There are N rabbits, numbered 1 through N.

The i-th (1≤i≤N) rabbit likes rabbit a_i. Note that no rabbit can like itself, that is, a_i≠i.

For a pair of rabbits i and j (i<j), we call the pair (i,j) a friendly pair if the following condition is met.

  • Rabbit i likes rabbit j and rabbit j likes rabbit i.

Calculate the number of the friendly pairs.

Constraints

  • 2≤N≤10^5
  • 1≤a_i≤N
  • a_i≠i

Input

The input is given from Standard Input in the following format:

N
a_1 a_2 ... a_N

Output

Print the number of the friendly pairs.


Sample Input 1

4
2 1 4 3

Sample Output 1

2

There are two friendly pairs: (1,2) and (3,4).


Sample Input 2

3
2 3 1

Sample Output 2

0

There are no friendly pairs.


Sample Input 3

5
5 5 5 5 1

Sample Output 3

1

There is one friendly pair: (1,5).


Submit提出する