树上哈希
Frozen_Guardian
已退役菜鸡Acmer
展开
-
洛谷 - P4323 [JSOI2016]独特的树叶(树上哈希+换根dp)
题目链接:点击查看题目大意:给出一棵 n 个节点的树 A ,再给出一棵 n + 1 个节点的树 B,题目保证了树 B 是树 A 添加了一个叶子结点后的一棵树,只不过编号的顺序不同,现在问这个叶子节点是哪个节点,如果有多个满足条件的节点,输出编号最小的那个题目分析:题目的意思是树 B 去掉一个叶子节点后,与树 A 同构,这样我们可以先以点 1 为根节点,用树上哈希 O( n ) 求出 dp1[ 1 ] 表示以点 1 为根节点时树的哈希值,然后利用换根 dp ,O( n ) 求出 dp2[ x ] 表示原创 2020-08-31 20:45:06 · 354 阅读 · 0 评论 -
洛谷 - P5043 【模板】树同构([BJOI2015]树的同构)(树上哈希)
题目链接:点击查看题目大意:给出 m 棵树,对于第 i 棵树而言,找到 1 ~ i 中与当前树同构的最小 id题目分析:判断有向树同构,可以预处理出质数数组 p ,然后树形 dp ,设 u 为当前节点,v 为子节点,那么 dp[ u ] += dp[ v ] * p[ sz[ v ] ] ,dp 数组设置为 unsigned long long,让他自然溢出即可,而无根树判断同构,只需要以无根树的重心为根节点,再进行上面有向树判断同构的过程即可,因为每棵树的重心至多有两个,所以都要一起保存下来最原创 2020-08-31 19:32:30 · 333 阅读 · 0 评论