#1277. 「一本通 3.6 练习 5」Blockade

「一本通 3.6 练习 5」Blockade

题目描述

Byteotia 有 nn 个城镇和 mm 条双向道路,任意两个城镇之间都可以互相到达。每个城镇恰好有一名居民,每名居民都希望前往其他每个城镇各访问一次,因此原本共有 n(n1)n(n-1) 次访问。

现在要封锁其中一个城镇。被封锁的城镇不能进入、离开或经过。对于每个城镇,请计算封锁该城镇后,有多少次访问无法完成。

访问的起点和终点不同,且访问是有方向的。例如,从城镇 11 到城镇 22 与从城镇 22 到城镇 11 是两次不同的访问。

输入格式

第一行包含两个整数 n,mn,m,分别表示城镇数和道路数。

接下来 mm 行,每行包含两个整数 a,ba,b,表示城镇 aa 与城镇 bb 之间有一条双向道路。

输出格式

输出 nn 行,第 ii 行包含一个整数,表示封锁城镇 ii 后无法完成的访问次数。

样例

5 5
1 2
2 3
1 3
3 4
4 5
8
8
16
14
8

数据范围与提示

  • 1n1051 \le n \le 10^5
  • 1m5×1051 \le m \le 5 \times 10^5
  • 图中没有自环和重边,并且整个图连通。

来源

一本通 3.6 练习 5,POI 2008