물탱크 알바(Easy)

시간 제한3초메모리 제한1024 MB

요약
m의 물을 한 물탱크에 부어 넘침이 트리를 타고 올라갈 때, 꽉 찬 물탱크 수를 최대로 만드는 시작 물탱크를 찾는다.
난이도

보통10점 중 6점

유형
트리, DFS, 시뮬레이션, 완전 탐색
정답자
아직 제출이 없습니다

문제

이 문제는 물탱크 알바(Hard)의 하위 문제이고, 물탱크 알바(Hard)의 정답 코드를 제출하여 맞힐 수 있다.

잔나비 콘서트에 가기 위한 돈을 벌기 위해 창연이는 송도수자원공사에 취직했다.

송도수자원공사의 정수 시설은 물탱크 nn개와 물탱크를 연결하는 수로 n−1n-1개로 구성된다. 정수 시설은 11번 물탱크를 루트로 하는 이진 트리 구조를 이루며, ii번 물탱크는 용량 c_ic\_i를 갖는다. 창연이는 임의의 물탱크 하나에 펌프를 연결하여 mm의 물을 흘려보낼 수 있다.

왼쪽 그림은 11번 물탱크에 33의 물을 투입한 결과, 오른쪽 그림은 22번 물탱크에 33의 물을 투입한 결과이다.

각 물탱크에 흘러온 물은, 다음과 같이 움직인다. 편의를 위해 물탱크를 잇는 수로에는 용량이 없다고 가정한다.

  • 자신의 아래쪽으로 직접 연결된 물탱크 중 꽉 차지 않은 물탱크가 11개만 있다면, 흘러 들어오는 물은 그 물탱크로 고스란히 흘러 내려간다.
  • 자신의 아래쪽으로 직접 연결된 물탱크 중 꽉 차지 않은 물탱크가 22개 있다면, 흘러 들어오는 물은 절반씩 나뉘어 두 물탱크로 흘러 내려간다.
  • 자신의 아래쪽으로 직접 연결된 물탱크 중 꽉 차지 않은 물탱크가 없고 현재 물탱크에 물이 꽉 차지 않았다면, 흘러 들어오는 물은 현재 물탱크에 차오른다.
  • 자신의 아래쪽으로 직접 연결된 물탱크 중 꽉 차지 않은 물탱크가 없고 현재 물탱크에 물이 꽉 찼다면, 물은 흘러 들어오지 않고 그대로 부모 물탱크로 넘쳐 올라간다.

송도수자원공사는 정수 능력에 비례하여 일당을 주고, 정수 시설의 정수 능력은 꽉 찬 물탱크 수에 비례한다.

창연이가 빠르게 콘서트비를 마련할 수 있도록 도와주자!

입력

첫 번째 줄에는 두 정수 n,mn, m이 공백으로 구분되어 주어진다.

두 번째 줄에는 nn개의 정수 c_1,c_2,…,c_nc\_1,c\_2,\ldots ,c\_n이 공백으로 구분되어 주어진다.

세 번째 줄에는 n−1n-1개의 정수 p_2,p_3,…,p_np\_2,p\_3,\ldots ,p\_n이 공백으로 구분되어 주어진다. p_ip\_i는 ii번 물탱크의 부모 물탱크의 번호이다.

출력

임의의 물탱크 하나에 펌프를 연결하여 mm의 물을 흘려보내서 꽉 채울 수 있는 물탱크의 수의 최댓값을 출력한다.

제한

  • 2≤n≤1,0002\le n\le 1\\, 000.
  • 1≤c_i≤1061\le c\_i\le 10^6.
  • 1≤m≤c_1+c_2+⋯+c_n≤1091\le m\le c\_1+c\_2+\cdots +c\_n\le 10^9.
  • 1≤p_i≤i−11\le p\_i\le i-1.
  • 물탱크의 구조는 루트가 11인 이진트리임이 보장된다.

예제1

  1. 예제 1

    입력
    7 6
    4 2 2 1 1 1 1
    1 1 2 2 3 3
    
    예상 출력
    5