#include <bits/stdc++.h>
using namespace std;
#define int long long
#define vi vector<int>
#define fi first
#define se second
#define pb push_back
#define ii pair<int , int>
#define pq priority_queue
#define iii pair<int , pair<int , int>>
#define fo(i,l,r) for(int i=l;i<=r;i++)
#define fod(i,r,l) for(int i=r;i>=l;i--)
#define fill(f,x) memset(f,x,sizeof(f))
#define NAME "file"
const int N = 2e5 + 5, mod = 1e9 + 7;
int n;
vector <int> g[N];
int w[N] , dp[N][2] , s[N] , node[N] , p[N] , cnt = 0;
void dfs1(int u , int pa)
{
s[u] = w[u];
node[u] = 1;
for (auto v : g[u])
if (v != pa)
{
dfs1(v , u);
s[u] += s[v];
node[u] += node[v];
}
}
bool cmp(int a , int b)
{
return s[a] * node[b] < s[b] * node[a];
}
void dfs2(int u , int pa)
{
vector <int> g2; // chua cac con
p[u] = ++cnt;
for (auto v : g[u])
if (v != pa)
{
g2.push_back(v);
}
sort(g2.begin() , g2.end() , cmp);
for (auto v : g2)
{
dfs2(v , u);
}
}
signed main()
{
ios_base::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
//freopen(NAME".INP" , "r" , stdin);
//freopen(NAME".OUT" , "w" , stdout);
cin >> n;
fo(i, 1, n)
cin >> w[i];
fo(i, 2, n)
{
int p;
cin >> p;
g[p].push_back(i);
}
dfs1(1 , 0);
dfs2(1 , 0);
int ans = 0;
fo(i, 1, n)
ans += p[i] * w[i];
cout << ans;
}
// haronnee_
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgaW50IGxvbmcgbG9uZwojZGVmaW5lIHZpIHZlY3RvcjxpbnQ+CiNkZWZpbmUgZmkgZmlyc3QKI2RlZmluZSBzZSBzZWNvbmQKI2RlZmluZSBwYiBwdXNoX2JhY2sKI2RlZmluZSBpaSBwYWlyPGludCAsIGludD4KI2RlZmluZSBwcSBwcmlvcml0eV9xdWV1ZQojZGVmaW5lIGlpaSBwYWlyPGludCAsIHBhaXI8aW50ICwgaW50Pj4KI2RlZmluZSBmbyhpLGwscikgZm9yKGludCBpPWw7aTw9cjtpKyspCiNkZWZpbmUgZm9kKGkscixsKSBmb3IoaW50IGk9cjtpPj1sO2ktLSkKI2RlZmluZSBmaWxsKGYseCkgbWVtc2V0KGYseCxzaXplb2YoZikpCiNkZWZpbmUgTkFNRSAiZmlsZSIKCmNvbnN0IGludCBOID0gMmU1ICsgNSwgbW9kID0gMWU5ICsgNzsKaW50IG47CnZlY3RvciA8aW50PiBnW05dOwppbnQgd1tOXSAsIGRwW05dWzJdICwgc1tOXSAsIG5vZGVbTl0gLCBwW05dICwgY250ID0gMDsKCnZvaWQgZGZzMShpbnQgdSAsIGludCBwYSkKewogICAgc1t1XSA9IHdbdV07CiAgICBub2RlW3VdID0gMTsKCglmb3IgKGF1dG8gdiA6IGdbdV0pIAoJaWYgKHYgIT0gcGEpIAoJewoJCWRmczEodiAsIHUpOwogICAgICAgIAogICAgICAgIHNbdV0gKz0gc1t2XTsKICAgICAgICBub2RlW3VdICs9IG5vZGVbdl07CiAgICB9Cn0KCmJvb2wgY21wKGludCBhICwgaW50IGIpCnsKICAgIHJldHVybiBzW2FdICogbm9kZVtiXSA8IHNbYl0gKiBub2RlW2FdOwp9Cgp2b2lkIGRmczIoaW50IHUgLCBpbnQgcGEpCnsKICAgIHZlY3RvciA8aW50PiBnMjsgLy8gY2h1YSBjYWMgY29uIAogICAgcFt1XSA9ICsrY250OwoKCWZvciAoYXV0byB2IDogZ1t1XSkgCglpZiAodiAhPSBwYSkgCgl7CgkJZzIucHVzaF9iYWNrKHYpOwogICAgfQoKICAgIHNvcnQoZzIuYmVnaW4oKSAsIGcyLmVuZCgpICwgY21wKTsKCiAgICBmb3IgKGF1dG8gdiA6IGcyKQogICAgewogICAgICAgIGRmczIodiAsIHUpOwogICAgfQp9CgoKc2lnbmVkIG1haW4oKQp7CiAgICBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKDApOwogICAgY2luLnRpZSgwKTsgIGNvdXQudGllKDApOwogICAgLy9mcmVvcGVuKE5BTUUiLklOUCIgLCAiciIgLCBzdGRpbik7CiAgICAvL2ZyZW9wZW4oTkFNRSIuT1VUIiAsICJ3IiAsIHN0ZG91dCk7CgogICAgY2luID4+IG47CiAgICBmbyhpLCAxLCBuKQogICAgICAgIGNpbiA+PiB3W2ldOwoKICAgIGZvKGksIDIsIG4pCiAgICB7CiAgICAgICAgaW50IHA7CiAgICAgICAgY2luID4+IHA7CiAgICAgICAgZ1twXS5wdXNoX2JhY2soaSk7CiAgICB9CgogICAgZGZzMSgxICwgMCk7CiAgICBkZnMyKDEgLCAwKTsKCiAgICBpbnQgYW5zID0gMDsKICAgIGZvKGksIDEsIG4pCiAgICAgICAgYW5zICs9IHBbaV0gKiB3W2ldOwogICAgY291dCA8PCBhbnM7Cn0KLy8gaGFyb25uZWVf