2016.PolandBall and Gifts

Time Limit: 1s Memory Limit: 256MB

It's Christmas time! PolandBall and his friends will be giving themselves gifts. There are n Balls overall. Each Ball has someone for whom he should bring a present according to some permutation p, pi \neq i for all i.

Unfortunately, Balls are quite clumsy. We know earlier that exactly k of them will forget to bring their gift. A Ball number i will get his present if the following two constraints will hold:
Ball number i will bring the present he should give. Ball x such that px=i will bring his present.
What is minimum and maximum possible number of kids who will not get their present if exactly k Balls will forget theirs?

Input Format(From the terminal/stdin)

The first line of input contains two integers n and k (2 \le n \le 106, 0 \le k \le n), representing the number of Balls and the number of Balls who will forget to bring their presents.

The second line contains the permutation p of integers from 1 to n, where pi is the index of Ball who should get a gift from the i-th Ball. For all i, pi \neq i holds.

Output Format(To the terminal/stdout)

You should output two values- minimum and maximum possible number of Balls who will not get their presents, in that order.

Sample Input 1

Copy
5 2
3 4 1 5 2
 · \n
 · · · · \n

Sample Output 1

Copy
2 4
 · \n

Sample Input 2

Copy
10 1
2 3 4 5 6 7 8 9 10 1
  · \n
 · · · · · · · ·  · \n

Sample Output 2

Copy
2 2
 · \n

Hints

In the first sample, if the third and the first balls will forget to bring their presents, they will be th only balls not getting a present. Thus the minimum answer is 2. However, if the first ans the second balls will forget to bring their presents, then only the fifth ball will get a present. So, the maximum answer is 4.

Submit

请先 登录

© 2025 FAQs