首先说明一下题意有些题面没說明白。如果A是C的第5代B是C的第4代则不满足,要求最近公共祖先是两个人的5代及以上
如果查询的是起源人也是输出NA。给出的名称最后表礻性别的m和f不算为名称后缀查询时会带有。
题目实际上就是给定一个图问两个点是否有5代以内的最近公共祖先。由于给的是字符串需要先用map编号为1~n的点处理。
映射编号建图后从祖先节点0开始DFS求出每个点的深度。找LCA时深度深的先向上跳只有当深度相同时k才减少。
由於只跳5次数据量不大直接暴力跳LCA就行接受询问时,姓氏可以直接丢弃掉