3661: 旅行

内存限制:256 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:11 解决:4

题目描述

chffy来到了一个奇怪的国家旅行。这个国家有N个城市,每个城市均有且仅有一个机场,但是这机场所有航班只飞往一个城市。每个城市有一个游览价值,第i个城市的游览价值为A[i]。   

现在他想知道,从第i个城市出发,并只坐飞机飞往下一个城市游览价值之和最多是多少(一个城市游览多次只计算1次游览价值

输入

输入文件travel.in的第1行为一个正整数N。    

第2行有N个非负整数A[i],表示了每个城市的游览价值。    

第3行有N个正整数F[i],表示第i个城市的航班飞往的城市为F[i],可能出现F[i] = i的情况。

输出

输出文件travel.out包括N行,第i行包含一个非负整数,表示从第i个城市出发游览价值之和的最大值为多少。

样例输入 复制

8
5 4 3 2 1 1 1 1
2 3 1 1 2 7 6 8

样例输出 复制

12
12
12
14
13
2
2
1

提示

对于20%的数据,N≤10;    

对于40%的数据,N≤1000;    

对于100%的数据,N≤200000,A[i]≤10000,F[i]≤N。