Побег с горной базы

아직 제출이 없습니다시간 제한2초메모리 제한1024 MB

문제

После того как Лэнс Стерлинг украдет чемодан с горной базы, ему предстоит вернуться в штаб. Самый безопасный способ это сделать --- съехать на лыжах по горе и сесть в вертолёт, который заранее будет стоять на одной из плоских полян, расположенных на горе.

Всего на горе есть nn полян, которые пронумерованы от 11 до nn в порядке уменьшения высоты. Поляна с номером 11 находится выше всего, а на каждую другую поляну ведет тропа с ровно одной поляны, которая находится выше. Лэнс может скатываться на лыжах только по тропам и только с более высокой поляны на более низкую.

У Лэнса в распоряжении есть kk вертолетов. Он собирается расставить их на некоторых полянах. Лэнс еще не знает, на какой из полян он окажется сразу после побега. Поэтому, хочет расставить вертолеты таким образом, чтобы количество полян, с которых он может добраться до какого-нибудь вертолета, было максимально.

Сейчас они с Уолтером прорабатывают план, и Лэнс заинтересовался, чему равно максимальное количество полян, с которых можно будет добраться до вертолета, если расставить вертолеты оптимальным образом.

입력

В первой строке даны два числа nn и kk --- количество полян на горе и вертолётов в распоряжении у Лэнса (1kn300,0001 \le k \le n \le 300\\,000).

В следующей строке даны n1n - 1 целых чисел p_2,p_3,p_np\_2, p\_3, \dots p\_n. Число p_ip\_i означает, что тропа, ведущая на поляну ii, начинается на поляне p_ip\_i (1p_i<i1 \le p\_i < i).

출력

Выведите одно число --- максимальное количество полян, с которых можно будет добраться до вертолета при оптимальной расстановке вертолетов.