E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
BZOJ1123
BZOJ1123
BLO 割点+树上不连通点计数
把一个点相连的边去掉。若其不是割点。则图被分成一个图和一个点。点对个数为:2*(n-1);否则的话:对于割点x,把与其相连的边删去:其儿子节点y,若low[y]>=dfn[x],则以y为根在搜索树上的子树,最终会被分离。其贡献的点对为(即该部分点在前):siz[y]*(n-siz[y])若low[y]=dfn[x]);则贡献为:(n-sm-1)*(sm+1);然后dfs处理上面过程即可。#incl
夕林山寸
·
2020-07-01 18:35
图论——tarjin
图论——思维题
BZOJ1123
: [POI2008]BLO
题目大意:给一张无向连通图,对于每个点x,输出删掉所有与他相邻的边之后,图中有多少对点不连通设删掉所有与点x相邻的边之后,除了自己其他联通块大小为a1,a2,a3...aK则ans[x]=∑i=1K∑j=1K[j!=i]aiaj+2(n−1)=∑i=1K∑j=1Kaiaj−∑i=1Ka2i+2(n−1)=(∑i=1Kai)2−∑i=1Ka2i+2(n−1)=(n−1)2−∑i=1Ka2i+2(n−
commonc
·
2017-05-19 09:07
BZOJ
POI
tarjan
[
BZOJ1123
][POI2008]BLO(tarjan求点双+树形dp)
题目描述传送门题目大意:给出一个n个点m条边的无向连通图,问去掉每一个点之后存在多少点对不连通。题解tarjan求点双联通分量,对于每一个点双建立一个虚拟的节点,然后将这个点双的所有节点都连接到这个节点上,这样就形成了一棵树的结构容易知道这道题求的应该是去掉每一个点之后形成的联通块的每一个大小,然后利用乘法原理计算一下,所以建出树了之后dp一下就行了代码#include#include#inclu
Clove_unique
·
2017-04-06 15:13
题解
dp
tarjan
【
BZOJ1123
】[POI2008]BLO【割顶】
【题目链接】题意可见discuss。用Tarjan求割顶,然后对割顶的所有子树求点对个数(前缀和扫一遍),最后把自身和其他点的答案加上。没注意边,数组开小了。/*Pigonometry*/ #include #include usingnamespacestd; typedeflonglongLL; constintmaxn=100005,maxm=500005; intn,m,head[
BraketBN
·
2016-04-21 11:00
上一页
1
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他