2333 构造了一个与数论相关的树。这棵树上的每一个节点都有一个权值wi.
一个点对(u,v) 被称作"X-整除"的,当且仅当它们的所有公共祖先都能够被某个数X整除。
x的祖先:从节点x到树的根经过的所有节点为该节点的祖先。 x,y的公共祖先:既是x的祖先,又是y的祖先的结点。
现在2333有 q 次询问,每次问你这颗树上的两个点是否是"X-整除"的。但是他转而向你求助。请你帮帮他吧!
第一行一个整数 n , 代表这棵树的节点的个数。
第二行 n−1 个整数 , f2,f3,...,fn 分别代表这些点的父亲节点,根为1。
第三行 n 个整数, w1,w2,...,wn ,分别代表每个点的权值。
第四行一个整数 q ,代表询问次数。
接下来 q 行,每行三个数 u v x 代表询问。
1≤n≤1e4
1≤fi≤n , 保证给定的是一颗合法的树。
1≤wi≤1e9
1≤q≤500
1≤u,v≤n
1≤x≤1e9
输出 q 个数,代表每次的询问结果:若其是"X-整除"的,则输出 YES , 否则输出 NO 。注意YES, NO必须大写,其他写法不得分
输入
5
1 1 3 3
8 6 4 8 3
4
1 3 4
1 3 9
4 5 4
4 5 8
输出
YES
NO
YES
NO
样例解释:
第一次询问 : 1,3的公共祖先为1 , 值为8 , 能够被4 整除,所以输出YES
第二次询问 : 1,3的公共祖先为1 , 值为8 , 不能被9 整除,所以输出NO
第三次询问 : 4,5的公共祖先为1,3 , 值为8,4 , 都能够被4 整除,所以输出YES
第四次询问 : 4,5的公共祖先为1,3 , 值为8,4 , 结点3不能被8 整除,所以输出NO
1≤n≤1e5
1≤fi≤n , 保证给定的是一颗合法的树。
1≤wi≤1e9
1≤q≤1e5
1≤u,v≤n
1≤x≤1e9
扫码备注加群即可,期待您的到来~
By signing up a CodeFun2000 universal account, you can submit code and join discussions in all online judging services provided by us.