CF949C Data Center Maintenance
Sol
考虑建模:如果 \(a\) 选上了,那么 \(b\) 也一定要选上,那么连一条边 \(a\rightarrow b\)。
不难注意到 scc 内所有的点循环依赖,也就是说一个 scc 要么全不不选,要么全不选。于是考虑缩点,问题就转化成如下:
- 给定一个 DAG,每个点有个权值,每次选择一个点,那么就要选上它的所有出边对应的点。
这个是简单的,直接选出度为 \(0\) 的一定不劣。
Code
Link。
考虑建模:如果 \(a\) 选上了,那么 \(b\) 也一定要选上,那么连一条边 \(a\rightarrow b\)。
不难注意到 scc 内所有的点循环依赖,也就是说一个 scc 要么全不不选,要么全不选。于是考虑缩点,问题就转化成如下:
这个是简单的,直接选出度为 \(0\) 的一定不劣。
Link。