首页 > TAG信息列表 > bzoj1123

「BZOJ1123」BLO 题解报告

题目描述 B城有n个城镇。m条双向道路。每条道路连接两个不同的城镇,没有重复的道路,所有城镇连通。 你需要输出n个数,第i个数表示删除结点i关联的边,不删去i结点,有多少个有序对(x,y),满足城镇x和城镇y不连通。 输入 输入n,m及m条边。n<=100000,m<=500000 输出 输出n个数,第i个数表示删除结

BZOJ1123 BLO Tarjan

题目描述:一个国家有n个城镇,m条双向道路,n<=1e5,m<=5e5,没有自环和重边。所有城镇联通。现在你需要给出n个答案,第i个答案表示当你去掉结点i的所有关联边后,整个图上有多少个点对(u,v)满足u,v不连通?   思路:若某个结点u在图上不是割点的话,相当于只有u与其他结点断开了联系。所以答案为2*(

$bzoj1123-POI2008\ BLO\ tarjan$

题面描述 \(Byteotia\)城市有\(n\)个\(towns\),\(m\)条双向\(roads\). 每条\(road\)连接 两个不同的\(towns\),没有重复的\(road\). 所有\(towns\)连通。 输入格式 输入\(n\leq 10^5,m\leq 5*10^5\)及\(m\)条边 输出格式 输出\(n\)个数,代表如果把第\(i\)个点去掉,将有多少对点

bzoj1123:[POI2008]BLO

传送门 提示:被删掉的点也要算点对,\((i,j)\)和\((j,i)\)是不同的点对 显然找出割点就行了,记下size,对于各子树统计一下答案 代码: #include<cstdio> #include<iostream> #include<algorithm> using namespace std; void read(int &x) { char ch; bool ok; for(ok=0,ch=getcha