WC2015 k小割(k短路+暴力+搜索)

首先这道题不是非同一般的恶心,三个数据层次对应三个程序= =

PROBLEM:http://uoj.ac/problems
解法:

1~2直接暴力枚举边的选择与否+判断就行了

7~14可以发现是一个平面图,联想到BZOJ1001的题目,考虑用最短路解决。对于每个点,可以发现有3种选择方式,任选一条或全选,就能用k短路解决了,由于这道题题目特殊,最短路树是条链+每个点只有3条边,不用写堆套堆的恶心程序还可以

其他:WC上讲了,让人有一种好像很容易的感觉,其实还是恶心得一塌糊涂

首先先求出最小割,对于次小割,有两种选择方式:

(1)不选最小割中的某一条边后在跑最小割的最小值

(2)选非最小割中的最小的一条边

可以发现这个可以用类似k短路的方法维护,记录每个状态中每条边被强制选或强制不选让后在进行枚举就行了

打的时候有多暴力就多暴力,第一种选择方式中可以这样优化:预处理出每个点在残量网络上与点s,点t的最小割,每条边的答案就为min(maxs[u],maxt[v]),其他大概就没啥注意的

因为maxt打成maxs查了2hQAQ,还是得注意这样的问题,打程序时细心点,静下心来,毕竟只剩下最后一次省选了,输不起了

好了就扯这么多吧贴代码跑了、

接下来就慢慢把NOI2014还有WC2015的题都改完就要来备战省选了

今天看了xyz的动态图,感觉自己萌萌哒,根本看不懂(其实是没心情看啦,还是刷题去吧)

加油吧

CODE:超过最长长度就不贴代码了= =

posted @ 2015-03-16 21:54  New_Godess  阅读(763)  评论(0编辑  收藏  举报