POI2008BLO 吐槽
来源:互联网 发布:旅游的软件哪个好 编辑:程序博客网 时间:2024/05/16 11:57
1123: [POI2008]BLO
Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 359 Solved: 126
[Submit][Status][Discuss]
Description
Byteotia城市有n个 towns m条双向roads. 每条 road 连接 两个不同的 towns ,没有重复的road. 所有towns连通。
Input
输入n<=100000 m<=500000及m条边
Output
输出n个数,代表如果把第i个点去掉,将有多少对点不能互通。
Sample Input
5 5
1 2
2 3
1 3
3 4
4 5
1 2
2 3
1 3
3 4
4 5
Sample Output
8
8
16
14
8
8
16
14
8
连通性的应用,根据树边与回边的性质,一个点被去掉时,影响的是存在回边的子树与不存在回边的子树,以及祖先,tarjan时分下类即可。
主要还是想抱怨下oj,原以为只有poj会数组开小出现wa,tle的情况,没想到衡八也是,调了我老久。
{$M 100000000}var size,tail,rel,low:array[1..1000005]of longint; ans:array[1..1000005]of int64; next,sora:array[1..5000005]of longint; m,time,ss:longint; n:int64;function min(x,y:longint):longint;begin if x<y then exit(x) else exit(y)end;procedure dfs(x:longint);var i,ne:longint; ans1:int64;begin inc(time);rel[x]:=time;low[x]:=time;i:=x;size[x]:=1; ans1:=0; while next[i]<>0 do begin i:=next[i];ne:=sora[i]; if rel[ne]<1073741819 then low[x]:=min(low[x],rel[ne]) else begin dfs(ne); size[x]:=size[x]+size[ne]; if low[ne]<low[x] then low[x]:=low[ne]; if low[ne]>=rel[x] then begin ans[x]:=ans[x]+ans1*size[ne]; ans1:=ans1+size[ne] end end end; ans[x]:=ans[x]+(n-ans1-1)*ans1+n-1end;procedure origin;var i:longint;begin for i:=1 to n do tail[i]:=i;ss:=n;end;procedure link(x,y:longint);begin inc(ss);next[tail[x]]:=ss;tail[x]:=ss;sora[ss]:=y; inc(ss);next[tail[y]]:=ss;tail[y]:=ss;sora[ss]:=xend;procedure init;var i,x,y:longint;begin readln(n,m); origin; for i:=1 to m do begin readln(x,y);link(x,y) end; fillchar(rel,sizeof(rel),127);fillchar(low,sizeof(low),127); time:=0; dfs(1); for i:=1 to n do writeln(ans[i]<<1)end;beginassign(input,'1123.in');reset(input); init;close(input)end.
- POI2008BLO 吐槽
- 吐槽
- 吐槽
- 吐槽
- 吐槽
- 吐槽
- 吐槽
- 吐槽
- 吐槽
- 吐槽
- 吐槽
- 吐槽
- 吐槽
- 吐槽!!!
- 吐槽
- 吐槽
- 吐槽
- 吐槽
- Yii Framework使用经验
- Qt 组合键的实现
- 抛弃WebService 在.NET4中用jQuery调用WCF
- UNIX/LINUX编程学习之进程通信--消息队列
- 用WPF实现屏幕文字提示
- POI2008BLO 吐槽
- java讲义,看了不后悔
- 如何编译gtk代码
- UNIX/LINUX编程学习之进程通信--共享内存
- Tyvj 1297 小气的小B
- ASP.NET页面间数据传递的方法
- ASP.NET MVC模型绑定的6个建议
- c# 通过ICallbackEventHandler 实现页面无刷新
- 程序员面试100题之六:最长公共子序列