U531088 静态树链点权第 k 小
题目背景
这是一道水题。
实在没想到谷上有[原题](https://www.luogu.com.cn/problem/P2633)哈,但本题数据更加残酷,请以 $O(\log n)$ 的时间复杂度完成每一次查询。
题目描述
给定一颗带点权的树,进行 $q$ 询问,求结点 $u$ 到结点 $v$ 所经最短路径形成的序列中第 $k$ 小的数。
输入格式
第一行一个整数 $n$ 表示结点数。
第二行有 $n$ 个整数表示每个结点最初的点权。
第三行有 $n$ 个整数表示每个结点的父结点,若为 $0$ 则表示根结点。
第四行为一个整数 $q$ 表示查询次数。
接下来的 $q$ 行每行三个整数 $u,v,k$ 表示一次查询,含义如题所述。
输出格式
共 $q$ 行,每行一个整数表示答案。
说明/提示
所有数据满足:$1\le n \le 10^5,1\le q \le 2\times 10^6$,保证所有点权在 int 范围内。