探索小游戏运行的技术基础与市场趋势分析
690
2022-11-17
Codeforces-1454E Number of Simple Paths(基环树-思维)
题目大意:
给你n个点,n条边,求图中简单路径的个数
题目思路:
n个点n条边,那么图中一定有一个环
拿这个图来讲,我们将两点间的关系分为4种1.两点都在环上,简单路径的个数为2 (例如2与5) 2.一个点在环上一个点不在环上,简单路径个数为2 (例如2与6) – 但不能是2与3或者2与4(这是情况3) 3.两个点在同一子树下(以环为根) 简单路径个数为 1 (例如2与3或者3与1) 4.两个点在不同一子树下(以环为根) 简单路径个数为 2 (例如7与3)
可以发现,任意两点间的简单路径的个数要么为1要么为2 且2的情况居多 那么可以假设4种情况都为2,只需要把情况三的算出来然后减去就行了
ans = (n-1)*n - (k-1)*k/2;k为以环上任意子节点为根的子树总节点数数学符号不会用(逃)
Code:
void top_sort() { cnt=0; queue
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~