码迷,mamicode.com
首页 > Web开发 > 详细

[JSOI2008]Blue Mary的旅行

时间:2020-01-25 15:25:19      阅读:86      评论:0      收藏:0      [点我收藏+]

标签:最大   它的   时间   答案   ble   $1   网络   二分答案   相同   

[**[JSOI2008]Blue Mary的旅行**](https://www.luogu.org/problem/P4400)

#### 题解:

看见这些人流动的过程,我们很容易想到网络流,看见最早到达时间,~~我们很容易想到费用流~~。

我们可以看出题目中所说的z对应着网络流中的容量,但是一天过后又重新可以使用这一条边,我们显然不能直接跑网络流,对于一个人,它的贡献为$1$,所以这道题可以转化为一个最大流的模型.

考虑整个问题,朝贪心的方面去想,要尽量的选择一条$s$到$t$的最短路径,选择s到t的最短路径,不会使答案更差,但是选完这一条路后,仍然可以选这一条路,此时被选过的最短路径可能会劣于$s$到$t$的另一条路径,因为花费了$1$单位的时间,考虑去掉时间的限制,我们可以二分答案.

对于二分的$mid$,可以将最短路径在$mid$时间里的所有贡献累加到答案里,现在要考虑如何找到这么一条最短路径。考虑$dinic$的过程,每一次找到一个分层图,分层图的性质可以$s$到$t$的任意一条路径都相同且在原图中最短,每一次求出的最大流就是一次所能达到$t$的最大人数。由于在分层图中都是最短路,则选择都可以是答案不会更差,将这一些人在$mid$时间内的贡献累加值答案。

[JSOI2008]Blue Mary的旅行

标签:最大   它的   时间   答案   ble   $1   网络   二分答案   相同   

原文地址:https://www.cnblogs.com/zhouhuanyi/p/12233046.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!