随笔分类 -  图论-桥

摘要:题目 一个有n个景点(入口)、m条单向道路的旅游胜地,单向是不友好的,因为这会让游客走很多冤枉路,而且从同一个入口出发,往不同方向走,能游玩的景点数目可能不同。于是,善良的Bob决定将道路全部改造成双向的,让每一个入口能逛的景点数量都确定下来,并制作景点数目表,让游客清楚地知道各个入口的景点数。但是 阅读全文
posted @ 2021-12-09 22:03 zhangtingxi 阅读(42) 评论(0) 推荐(0) 编辑
摘要:桥 定义 无向连通图中如果一条边断开后能使图不连通则条边就是桥。 方法 dfs+并查集 每条边只能走一次。如果搜到一个点还在访问中说明他们是双连通分量,用并查集合并。 Code void dfs(int x) { for(int g=h[x]; g; g=d[g].n) { if(c[g]) con 阅读全文
posted @ 2021-12-01 22:22 zhangtingxi 阅读(92) 评论(0) 推荐(0) 编辑
摘要:题目链接 题目中对主要航道定义是这样的: 如果某一条航道的删除使得一些星球不能到达,那么这条航道是不能删除的,称之为「主要航道」。 这说明了什么? 说明了主要航道就是桥。 然后题目就是求桥的个数。 模板题。 Code // Problem: #10102. 「一本通 3.6 练习 3」旅游航道 // 阅读全文
posted @ 2021-11-29 22:18 zhangtingxi 阅读(108) 评论(0) 推荐(0) 编辑
摘要:题目链接 首先,环内的节点必然可以至少存在两条路径到达,所以我们不用考虑环内的节点,可以先对无向图缩点。 剩下的节点必然构成一棵树,我们只需要将叶子节点两两配对。因为这样其上面的所有父亲节点都可以通过它下面的叶子节点形成环。 Code // Problem: #10098. 「一本通 3.6 例 1 阅读全文
posted @ 2021-11-28 16:41 zhangtingxi 阅读(111) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示