题号:NC50750
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 32 M,其他语言64 M
64bit IO Format: %lld
题目描述
浮生有梦三千场
穷尽千里诗酒荒
徒把理想倾倒
不如早还乡
温一壶风尘的酒
独饮往事迢迢
举杯轻思量
泪如潮青丝留他方
——乌糟兽/愚青《旧词》
你已经解决了五个问题,不妨在这大树之下,吟唱旧词一首抒怀。最后的问题就是关于这棵树的,它的描述很简单。
给定一棵n个点的有根树,节点标号

,1号节点为根。
给定常数k。
给定Q个询问,每次询问给定x,y。
求:
)
表示节点x与节点y在有根树上的最近公共祖先。
)
表示节点x的深度,根节点的深度为1。
由于答案可能很大,你只需要输出答案模998244353的结果。
输入描述:
输入包含n+Q行。
第1行,三个正整数n,Q,k。
第
行,每行有一个正整数
,表示编号为i的节点的父亲节点的编号。
接下来Q行,每行两个正整数
)
,表示一次询问。
输出描述:
输出包含Q行,每行一个整数,表示答案模998244353的结果。
备注: