树的合并 connect

该博客介绍了一道关于计算两棵树通过加边连接后的所有树的直径之和的题目。给定两棵树的大小和边的信息,需要找出所有可能连接方式下树的直径总和。博客提供了解题思路,包括定义a[i]和b[j]表示以i开头的树的最长链,并计算最大直径的贡献。解题方法是通过扫描并计算最大值。
摘要由CSDN通过智能技术生成

树的合并 connect

题目描述

 

话说moreD经过不懈努力,终于背完了循环整数,也终于完成了他的蛋糕大餐。

         但是不幸的是,moreD得到了诅咒,受到诅咒的原因至今无人知晓。

         moreD在发觉自己得到诅咒之后,决定去寻找闻名遐迩的术士CD帮忙。

         话说CD最近在搞OI,遇到了一道有趣的题目:

         给定两棵树,则总共有N*M种方案把这两棵树通过加一条边连成一棵树,那这N*M棵树的直径大小之和是多少呢?

        

         CD为了考验moreD是否值得自己费心力为他除去诅咒,于是要他编程回答这个问题,但是这moreD早就被诅咒搞晕了头脑,就只好请你帮助他了。

 

 

输入

 

第一行两个正整数N,M,分别表示两棵树的大小。
接下来N-1行,每行两个正整数ai,bi,表示第一棵树上的边。
接下来M-1行,每行两个正整数ci,di,表示第二棵树上的边。

 

 

输出

 

一行一个整数,表示答案。

 

 

样例输入

4 3
1 2
2 3
2 4
1 3
2 3

样例输出

53

提示

 

【数据范围】

对于20%的数据满足N<=300,M<=300

对于50%的数据满足N,M<=3000

对于100%的数据满足N<=10^5,M<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值