고양이 소개팅
시간 제한4초메모리 제한1024 MB
루트 트리에서 각 굴에 암컷 또는 수컷 고양이가 살고 수컷은 낙하 한도 내에서 아래로 내려갈 수 있을 때, 짝지을 수 있는 최대 커플 수를 구한다.
문제
류트나라에는 거대한 캣타워가 있다. 캣타워는 루트 있는 트리 구조를 이룬다. 따라서 캣타워에는 1번부터 n번까지 번호가 붙은 n개의 보금자리와 보금자리를 연결하는 n-1개의 통로가 있다. 캣타워 맨 위에는 항상 1번 보금자리가 있다. 캣타워에 사는 고양이는 아래쪽 통로를 따라 살던 보금자리에서 다른 보금자리로 떨어질 수 있다. 고양이가 통로를 타고 올라갈 수는 없다. 캣타워가 루트 있는 트리 구조이므로, 맨 위 보금자리를 제외한 임의의 보금자리로 곧바로 떨어질 수 있는 통로는 정확히 하나 존재한다. 또한 어떤 보금자리에서 다른 보금자리로 떨어질 수 있다면 그 경로는 유일하며, 모든 보금자리는 통로로 이어져 있다. i번 보금자리에는 암컷 또는 수컷 고양이가 마리 살고 있다. i번 보금자리로 곧바로 떨어질 수 있는 통로의 길이는 이다. 한 보금자리에서 다른 보금자리로 이동하는 경로의 길이는 통로를 두 번 이상 지나지 않으면서 이동할 때 지나게 되는 모든 통로 길이의 합이다.
고양이들은 오늘 단체로 소개팅을 하려고 한다. 소개팅 한 쌍은 암컷 고양이 한 마리와 수컷 고양이 한 마리가 만나서 이뤄진다. 소개팅에 가기 위해 수컷 고양이는 아래쪽 통로를 통해 이동할 수 있는 보금자리로 뛰어내릴 수 있다. 공중 곡예비행의 대가라고 불리는 고양이들도 너무 많이 떨어지면 다치므로, i번 보금자리에 사는 고양이는 원래 살던 보금자리로부터 경로의 길이가 를 초과하는 정점으로는 뛰어내리지 않기로 했다. 시장 leejseo는 가능한 많은 쌍의 소개팅이 이뤄지길 원한다. leejseo는 소개팅 횟수를 최대화할 방법을 고민하다가 당신에게 그 작업을 맡기기로 했다. 캣타워의 구조와 고양이 정보가 주어질 때, 성사될 수 있는 소개팅 횟수의 최댓값을 구하시오.
입력
첫 번째 줄에 캣타워 내 보금자리의 개수 ()이 주어진다.
두 번째 줄에 1번 보금자리부터 n번 보금자리에 사는 고양이의 수 ()가 차례대로 주어진다.
세 번째 줄에 1번 보금자리부터 n번 보금자리에 사는 고양이가 떨어질 수 있는 최대 높이 가 차례대로 주어진다. 는 -1이거나 이다. 가 1 이상의 정수라면 i번 보금자리에는 마리의 수컷 고양이가 산다. 가 -1이라면 그 보금자리에는 마리의 암컷 고양이가 산다.
네 번째 줄에 2번 보금자리부터 n번 보금자리까지, 그 보금자리로 곧바로 떨어질 수 있는 보금자리 ()가 차례대로 주어진다.
다섯 번째 줄에 2번 보금자리부터 n번 보금자리까지, 그 보금자리로 곧바로 떨어질 수 있는 통로의 길이 ()가 차례대로 주어진다.
출력
첫 번째 줄에 성사될 수 있는 소개팅 횟수의 최댓값을 출력한다.