题目描述
一套信号网络由 n 座中继站组成,编号为 1∼n。第 i 座中继站的收益为 wi (−109≤wi≤109),并且预先指定了另一座中继站 ai 作为它的信号参考源。
每座中继站保存一个二进制信号状态 ci。初始时,只有中继站 s 保存激活信号,即 cs=1;其余中继站均未激活,即 ci=0 (i=s)。
你可以进行任意多次操作,也可以一次都不进行。每次操作选择一座中继站 i,支付 pi 的维护费用,使它立即同步参考站 ai 的当前信号状态,也就是令 ci←cai。
网络调整结束后,所有满足 ci=1 的中继站都会贡献其收益 wi。你的最终得分等于这些收益的总和减去全部操作费用。请合理安排操作,求能够获得的最大得分。
输入格式
第一行两个整数 n,s,表示中继站数量和初始信号状态为 1 的中继站编号。
第二行 n 个整数 w1,w2,⋯,wn,表示每座中继站的收益。
第三行 n 个整数 p1,p2,⋯,pn,表示同步每座中继站所需的费用。
第四行 n 个整数 a1,a2,⋯,an,表示每座中继站对应的参考站编号。
输出格式
输出一行一个整数答案。
样例
样例1
样例输入
3 1
-1 -1 2
1 0 0
3 1 2
样例输出
1
样例解释
- 初始时,各中继站的信号状态为 c=(1,0,0);
- 同步中继站 2,即执行 c2←ca2,费用为 p2=0,状态变为 c=(1,1,0);
- 同步中继站 1,即执行 c1←ca1,费用为 p1=1,状态变为 c=(0,1,0);
- 同步中继站 3,即执行 c3←ca3,费用为 p3=0,状态变为 c=(0,1,1);
- 再次同步中继站 2,即执行 c2←ca2,费用为 p2=0,状态变为 c=(0,0,1);
- 最终仅中继站 3 处于激活状态,得分为 w3−(p2+p1+p3+p2)=1。
样例2
样例输入
10 8
36175808 53666444 14885614 -14507677 -92588511 52375931 -87106420 -7180697 -158326918 98234152
17550389 45695943 55459378 18577244 93218347 64719200 84319188 34410268 20911746 49221094
8 1 2 2 8 8 4 7 8 4
样例输出
35343360
数据范围与提示
数据范围
本题采用子任务捆绑测试。
子任务 1 ( 8 分): n≤20 ;
子任务 2 ( 16 分): ai={i−1ni>1i=1 ;
子任务 3 ( 16 分): pi=0 ;
子任务 4 ( 28 分): wi≥0 ;
子任务 5 ( 32 分): 无特殊限制。
所有数据满足: 1≤s≤n≤5000 , −109≤wi≤109 , 0≤pi≤109 , 1≤ai≤n 且 ai=i 。