#2006. 软件安装

软件安装

题目描述

现在我们的手头有N\red{N}个软件,对于一个软件i\red{i,}它要占用Wi\red{Wi}的磁盘空间,它的价值为Vi\red{V_i}。我们希望从中选择一些软件安装到一台磁盘容量为M\red{M}计算机上,使得这些软件的价 值尽可能大(即Vi\red{V_i}的和最大)。 但是现在有个问题:软件之间存在依赖关系,即软件i\red{i}只有在安装了软件j\red{j(}包括软件j\red{j}的直接或间接依赖)的情况下才能正确工作(软件i\red{i}依赖软件j)\red{j)}。幸运的是,一个软 件最多依赖另外一个软件。如果一个软件不能正常工作,那么它能够发挥的作用为0\red{0}

我们现在知道了软件之间的依赖关系:软件i\red{i}依赖软件Di\red{D_i}。现在请你设计出一种方案,安装价值尽量大的软件。一个软件只能被安装一次,如果一个软件没有依赖则Di=0\red{D_i=0,}这时只要这个软件安装了,它就能正常工作。

输入格式

1\red{1}行:N,M\red{N, M (}0<=N<=100,0<=M<=500\red{0<=N<=100, 0<=M<=500)}

2\red{2}行:W1,W2,...Wi,...,Wn\red{W_1, W_2, ... W_i, ..., W_n (}0<=Wi<=M\red{0<=W_i<=M )}

3\red{3}行:V1,V2,...,Vi,...,Vn\red{V_1, V_2, ..., V_i, ..., V_n (}0<=Vi<=1000\red{0<=V_i<=1000 )}

4\red{4}行:D1,D2,...,Di,...,Dn\red{D_1, D_2, ..., D_i, ..., D_n (}0<=Di<=N,Di\red{0<=D_i<=N, D_i}i\red{i )}

输出格式

一个整数,代表最大价值。

样例

输入样例

3 10
5 5 6
2 3 4
0 1 1

输出样例

5