思维题。
由于 a 数组是一个 1-n 的排列,因此对于每个 i,必然有这样的线路: i -> a[i] -> a[a[i]] -> ... -> i
所以必然是一个圈,只需要统计每个圈的大小为 x ,所有圈的平方 x2 和即为答案。
时间复杂度:O(n)
小红有一个长为n的排列,并使用该排列建了一个有向图。
规则为:第i条边从i连向ai,即有向边i−>ai。
小红想知道有多少二元组<p,q>可以满足,从p出发,能够到达q。
第一行一个整数n。
第二行n个整数ai。
q≤n≤105
1≤ai≤n
一个整数,代表二元组的数量。
输入
3
1 3 2
输出
5