题目链接

【洛谷传送门】

题解

很显然,当这个点不是割点的时候,答案是\(2*(n-1)\)
如果这个点是割点,那么答案就是两两被分开的联通分量之间求组合数。

代码

#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int N = 500005;
struct edge {int to, nt;
} E[N << 1];
int dfn[N], low[N], H[N], sz[N];
int cnt, ecnt, n, m, __dfn;
ll ans[N];
void add_edge(int u, int v) {E[++ ecnt] = (edge){v, H[u]}; H[u] = ecnt;
}
void tarjan(int u) {dfn[u] = low[u] = ++ __dfn; int cnt = 0; sz[u] = 1; for (int e = H[u]; e; e = E[e].nt) {int v = E[e].to; if (!dfn[v]) {tarjan(v); sz[u] += sz[v]; low[u] = min(low[u], low[v]); if (low[v] >= dfn[u]) {cnt += sz[v];ans[u] += 2ll * sz[v] * (n - cnt - 1);}} else low[u] = min(low[u], dfn[v]); }ans[u] += 2ll * (n - 1);
}
int main() {cin >> n >> m;for (int i = 1, u, v; i <= m; i ++) {scanf("%d%d", &u, &v); add_edge(u, v); add_edge(v, u);}tarjan(1); for (int i = 1; i <= n; i ++) printf("%lld\n", ans[i]);return 0;
}

转载于:https://www.cnblogs.com/chhokmah/p/10746320.html

「洛谷3469」「POI2008」BLO-Blockade【Tarjan求割点】相关推荐

  1. 【洛谷T580】【模板】template 鸡腿 tarjan找割点

    模板题. 代码: #include<cstdio> #include<iostream> #include<cstring> #include<algorit ...

  2. 「洛谷P3469」[POI2008]BLO-Blockade 解题报告

    P3469[POI2008]LO-Blockade 题意翻译 在Byteotia有n个城镇. 一些城镇之间由无向边连接. 在城镇外没有十字路口,尽管可能有桥,隧道或者高架公路(反正不考虑这些).每两个 ...

  3. 「LuoguP4995」「洛谷11月月赛」 跳跳!(贪心

    题目描述 你是一只小跳蛙,你特别擅长在各种地方跳来跳去. 这一天,你和朋友小 F 一起出去玩耍的时候,遇到了一堆高矮不同的石头,其中第 ii 块的石头高度为 h_ihi​,地面的高度是 h_0 = 0 ...

  4. 洛谷 3784(bzoj 4913) [SDOI2017]遗忘的集合——多项式求ln+MTT

    题目:https://www.luogu.org/problemnew/show/P3784 https://www.lydsy.com/JudgeOnline/problem.php?id=4913 ...

  5. SSL 2344 洛谷 2835 信息学奥赛一本通 1383 刻录光盘#floyd,tarjan,kosaraju#

    洛谷请关掉优化 题目 求有多少个连通块 分析 floyd+并查集 floyd代码 #include <cstdio> #include <cctype> #include &l ...

  6. bzoj 1123: [POI2008]BLO(Trajan求割点)

    1123: [POI2008]BLO Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 1468  Solved: 678 [Submit][Statu ...

  7. 「洛谷P1343」地震逃生 解题报告

    P1343 地震逃生 题目描述 汶川地震发生时,四川XX中学正在上课,一看地震发生,老师们立刻带领x名学生逃跑,整个学校可以抽象地看成一个有向图,图中有n个点,m条边.1号点为教室,n号点为安全地带, ...

  8. 「洛谷2495」「BZOJ3052」「SDOI2001」消耗战【虚树+树形动态规划】

    题目大意 给你\(k\)个点,让这一些点和一号节点断开,删去某一些边,求最小的删去边权之和. 做题的心路历程 做了\(HG\)昨天的模拟赛,深深感觉到了窝的菜,所以为了\(A\)掉T1这一道毒瘤,窝就 ...

  9. 「洛谷P2397」 yyy loves Maths VI (mode) 解题报告

    P2397 yyy loves Maths VI (mode) 题目背景 自动上次redbag用加法好好的刁难过了yyy同学以后,yyy十分愤怒.他还击给了redbag一题,但是这题他惊讶的发现自己居 ...

  10. 「洛谷」P1406 方格填数

    P1406 方格填数 https://www.luogu.com.cn/problem/P1406 题目描述 给一个n 的方格矩阵,还有 n*n个整数,让你将这些整数填入矩阵,使得每行每列每个对角线上 ...

最新文章

  1. [实现] 利用 Seq2Seq 预测句子后续字词 (Pytorch)
  2. Cocos2d-x3.0 TestCPP文件夹笔记
  3. 洛谷:P3950 部落冲突
  4. 深度学习数学基础(三): 激活函数、正则化函数、损失函数、评价指标
  5. python delete_python 使用 delete 方法时报错,可以正常删除
  6. 系列(五)—MySql
  7. 个人计算机的组成及相关功能,计算机的组成部分及功能(范文).doc
  8. laravel-admin grid中使用的switch必须form中同时具有switch才能生效的解决方案
  9. AMD宣布350亿美元收购赛灵思,CPU、GPU、FPGA全凑齐
  10. CCF202109-1 数组推导
  11. 深度linux添加xp,Linux和Windos XP下向路由表添加路由
  12. ubuntu服务器修改保存文件,Ubuntu Server 如何永久保存iptables的设置?
  13. 浅谈一次QQ被盗取(攻击)事件
  14. Linux下的围棋软件,在Linux下和电脑下围棋
  15. 年底裁员潮,这个冬天你怎样度过?
  16. Cocos2d-x 3.2 lua飞机大战开发实例(三)道具的掉落,碰撞检测,声音,分数,爆炸效果,完善游戏的功能细节
  17. 视频号账号定位怎么做?如何做微信视频号定位
  18. 工业自动化数据采集方案
  19. MATLAB2018a 64安装
  20. NFT带给我们普通人的机遇是什么?

热门文章

  1. Servlet中上传下载模板代码
  2. 类文件结构和字节码指令
  3. Spring源码之事务(二)
  4. 虚拟化技术中,不同层级结构间的虚拟化运用
  5. Java线程的5种状态及切换(透彻讲解)-京东面试
  6. python爬虫学习整理——爬虫入门(1)
  7. Ubuntu java 环境变量
  8. Debian5.0自动挂载U盘 - 使用pmount
  9. 旅游后台管理系列——使用maven构建工程
  10. dialog的二次封装