#P871. 点对乘积

点对乘积

题目描述

给定一棵 nn 个点,且以 11 号点为根的有根树,树上编号为 ii 的点的父节点为 pip_i ,权值为 xix_i 。同时给定一个正整数 mm

请你求出有多少对点对 (u,v)(u,v) ,满足 uuvv 的祖先,且 xu×xvmx_u \times x_v \leq m

输入格式

输入共三行: 第一行,两个正整数 n,mn,m 第二行,n1n-1 个正整数,分别表示 p2,p3,...,pnp_2,p_3,...,p_n 第三行,nn 个正整数,分别表示 x1,x2,...,xnx_1,x_2,...,x_n

输出格式

输出共一个数字,表示最终的答案

3 6
1 2
1 3 5
2

样例解释 1

点对(1,2)的乘积为3,满足<=6要求 点对(1,3)的乘积为5,满足<=6要求 点对(2,3)的乘积为15,不满足<=6要求

数据范围

  • 对于 30%30\% 的数据, 1n1021 \leq n \leq 10^2
  • 对于 60%60\% 的数据, 1n1041 \leq n \leq 10^4
  • 对于 100%100\% 的数据, $1 \leq n \leq 10^5 , 1\leq x_i,m \leq 10^9, 1\leq p_i \lt i$。