Sorry, your browser cannot access this site
This page requires browser support (enable) JavaScript
Learn more >

最近遇到了好多这样的题,感觉应该是一类题. 这一类问题就是要求满足某一限制条件下的最短路,比如每一条边都有两种边权,要求路径上其中一种边权之和小于某个值的条件下的另一个边权最小的路径.

有N个变量,每个变量都能取T或F,需要满足M个条件: X_{i} = T or X_{j} = F

要给每个变量赋值,满足所有条件.

构造有向图G,每个X_{i}拆成两个点2i和2i+1, 分别表示X_{i}取T或者F. 每个变量选其中的一个进行标记,标记了节点2i表示X_{i}=T,标记2i+1表示X_{i}=F.

对于每个条件,如X_{i} = T or X_{j} = F,可以从表示点i为F的节点到表示点j为F的节点连一条边,表示如果点i为F,那么点j一定是F. 同时,还要从表示点j为T的点向表示点i为T的点连一条边.

DFS方法

无向图割点/桥&双连通分量

无向图图中所有边要么是树边,要么是反向边。

割点的条件

  1. 当树根有两个及以上子节点时,树根是割点。
  2. 非根节点u为割点,当且仅当该点存在一个子节点v,且v及其所有后代都没有反向边连回u的祖先。(连回u不算,此时u是割点)

用LOW[x]代表x及其后代能连回祖先最小的DFN值,那么上述条件即为u存在一个子节点v,使得LOW[v] \geqslant DFN[u].

另外,若v的后代最早只能连到v自己,那么边(u,v)是桥。

一年半前为了省选学网络流之后第一次做网络流的题

首先是自己改造后的Dinic:

题目描述

C 国有 n 个大城市和 m 条道路,每条道路连接这 n 个城市中的某两个城市。任意两个城市之间最多只有一条道路直接相连。这 m 条道路中有一部分为单向通行的道路,一部分为双向通行的道路,双向通行的道路在统计条数时也计为 1 条。

C 国幅员辽阔,各地的资源分布情况各不相同,这就导致了同一种商品在不同城市的价格不一定相同。但是,同一种商品在同一个城市的买入价和卖出价始终是相同的。

P1027 Car的旅行路线

题目描述

又到暑假了,住在城市A的Car想和朋友一起去城市B旅游。她知道每个城市都有四个飞机场,分别位于一个矩形的四个顶点上,同一个城市中两个机场之间有一条笔直的高速铁路,第I个城市中高速铁路了的单位里程价格为Ti,任意两个不同城市的机场之间均有航线,所有航线单位里程的价格均为t。

p1027




Blog content follows the [Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) License](https://creativecommons.org/licenses/by-nc-sa/4.0/deed.en)
本站总访问量为 访客数为
Use Volantis as theme