아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

또 다른 위기

시간 제한1초메모리 제한128 MB

요약
회사 조직도를 트리로 주고 임계값 T퍼센트가 주어질 때, 대표에게 청원이 도달하도록 청원해야 하는 말단 직원의 최소 수를 구한다.
난이도

보통10점 중 6점

유형
트리, DFS, 그리디, 동적 계획법
정답자
아직 제출이 없습니다

문제

몇 년 전 전 세계적인 위기가 시작되어 많은 사람들이 경제적 어려움을 겪게 되었습니다. 어떤 회사의 직원들은 임금 인상을 요구하려고 합니다.

이 회사는 엄격한 위계 구조를 가지고 있습니다. 회사의 소유주를 제외한 모든 직원은 정확히 한 명의 직속 상사를 가지며, 소유주는 상사가 없습니다. 다른 어떤 직원의 상사도 아닌 직원을 직원(worker)이라고 부릅니다. 나머지 직원과 소유주는 모두 상사(boss)라고 부릅니다.

임금 인상을 요구하려면, 직원은 자신의 직속 상사에게 청원서를 제출합니다. 당연히 각 상사는 회사의 이익을 최대한 높게 유지하기 위해 부하 직원들이 현재 임금에 만족하도록 하고 싶어 합니다. 그러나 자신의 직속 부하 중 최소 TT 퍼센트가 청원서를 제출하면, 그 상사는 압박을 받아 어쩔 수 없이 자신의 직속 상사에게 청원서를 제출하게 됩니다. 몇 명의 부하가 청원서를 제출했든 관계없이, 각 상사는 자신의 상사에게 최대 한 번만 청원서를 제출합니다. 압박 비율을 계산할 때 상사는 오직 자신의 직속 부하(청원한 부하와 청원하지 않은 부하 모두)만을 셉니다.

한 상사는 직원과 하위 상사를 동시에 직속 부하로 둘 수 있으며, 양쪽 모두로부터 청원서를 받을 수 있습니다. 압박 비율을 확인할 때는 부하의 종류와 무관하게 각 직속 부하를 11로 셉니다.

청원서가 마침내 회사의 소유주에게까지 도달하면 모든 임금이 인상됩니다. 노동조합은 이를 반드시 성사시키고자 하므로, 충분히 많은 직원이 자신의 직속 상사에게 청원하도록 설득해야 합니다.

회사의 위계 구조와 매개변수 TT가 주어질 때, 소유주가 청원서를 받도록 하기 위해 청원서를 제출해야 하는 직원 수의 최솟값을 구하세요.

입력

입력은 여러 개의 테스트 케이스로 이루어져 있습니다. 각 테스트 케이스는 정확히 두 줄로 주어집니다.

첫째 줄에는 두 정수 NN과 TT (1≤N≤1051 \le N \le 10^5, 1≤T≤1001 \le T \le 100)가 공백 하나로 구분되어 주어집니다. NN은 (소유주를 제외한) 직원의 수이고, TT는 위에서 설명한 매개변수입니다. 직원은 11부터 NN까지의 정수로 식별하며, 소유주는 00으로 식별합니다.

둘째 줄에는 NN개의 정수가 공백 하나로 구분되어 주어집니다. ii번째 정수 BiB_i (0≤Bi≤i−10 \le B_i \le i - 1)는 직원 ii의 직속 상사의 식별 번호입니다.

마지막 테스트 케이스 다음에는 공백 하나로 구분된 두 개의 00이 담긴 줄이 주어지며, 이 줄은 처리하지 않습니다.

출력

각 테스트 케이스마다, 소유주가 청원서를 받도록 하기 위해 청원서를 제출해야 하는 직원 수의 최솟값을 정수 하나로 한 줄에 출력하세요.

예제1

  1. 예제 1

    입력
    3 100
    0 0 0
    3 50
    0 0 0
    14 60
    0 0 1 1 2 2 2 5 7 5 7 5 7 5
    0 0
    
    예상 출력
    3
    2
    5