摘要: ~~~题面~~~ 题解: 做这题的时候才知道有最小割可行边和必须边这种东西。。。。。 1,最小割可行边, 意思就是最小割中可能出现的边。 充要条件: 1,满流 2,在残余网络中找不到x > y的路径 解释: 如果在残余网络中还找得到x > y的路径的话,要割掉这条边就还需要割掉另一条路径,这显然是不 阅读全文
posted @ 2018-06-27 22:31 ww3113306 阅读(620) 评论(0) 推荐(0) 编辑
摘要: 题面: [ZJOI2011]最小割 [CQOI2016]不同的最小割 题解: 其实这两道是同一道题。。。。 最小割是用的dinic,不同的最小割是用的isap 其实都是分治求最小割 简单讲讲思路吧 就是首先全部的点都在一个集合里,然后随意定两个点为s和t,这里默认是第一个和最后一个。 然后找到最小割 阅读全文
posted @ 2018-06-27 21:26 ww3113306 阅读(224) 评论(0) 推荐(0) 编辑
摘要: ~~~题面~~~ 题解: 一开始很快想出了一个接近正解的建图方法,但其实是错误的,不过还是骗了70分_(:зゝ∠)_ 首先我们可以观察到棋子有限,但费用多种,其实也就相当于限制了流量,找最小费用 对于初始状态的每一个1,我们连s > x flow = 1 cost = 0 对于目标状态的每一个1,我 阅读全文
posted @ 2018-06-23 17:42 ww3113306 阅读(272) 评论(0) 推荐(0) 编辑
摘要: ~~~题面~~~ 题解: 做这题做了好久,,,换了4种建图QAQ 首先我们观察弃疗的形状,可以发现有一个特点,那就是都以一个固定不变的特殊边为中心的,如果我们将特殊边两边的方块分别称为s块和t块, 那么我们可以观察到,s块和t块永远是在中心位置,而其他两块则是紧邻s块和t块,一边一个。 所以我们要考 阅读全文
posted @ 2018-06-23 07:56 ww3113306 阅读(284) 评论(0) 推荐(0) 编辑
摘要: 1,map 对map实在不熟。。。赶紧记录一下用法吧。 后来再发现新的用法再补充吧 定义: map<int, int> m; 其中的int可以为自定义的任何类型。 m[key值类型的变量] = value值; 但是注意如果key值是自定义的结构体的话,一定要重载一下小于号的运算符。这个是map的要求 阅读全文
posted @ 2018-06-20 23:39 ww3113306 阅读(162) 评论(0) 推荐(0) 编辑
摘要: ~~~题面~~~ 题解: 吐槽:找了好久的错,换了n种方法,重构一次代码,,,, 最后发现,,, 数组开小了,其实一开始尝试开大了数组,但唯独没有尝试开大手写队列的数组。。。。 思路: 有两种方法,这里都介绍一下吧,分别在时间复杂度和代码复杂度上各有优势。 第一种:时间复杂度更优,代码复杂 观察到转 阅读全文
posted @ 2018-06-15 21:44 ww3113306 阅读(419) 评论(0) 推荐(0) 编辑
摘要: ~~~题面~~~ 题解: 因为我们并不需要知道准确方案,而人数固定,要使得平均等待时间最小,也就是要使得总的等待时间最小。 因此我们将工人按每个时刻拆点,拆完之后向车子连边,流量为1,费用为k * 维修时间(倒数第k个修,所以对时间的贡献就是k * 维修时间,因为后面的k-1人要等它,自己也要等) 阅读全文
posted @ 2018-06-13 13:52 ww3113306 阅读(151) 评论(0) 推荐(0) 编辑
摘要: ~~~题面~~~ 题解: 第一眼费用流,,然后想了好久怎么建图,,,最后发现是最小费用可行流的板子题。。。。 其实还没有很懂这个算法,所以这里只是摆一下步骤,以后再补理解吧。 首先一个思路就是转换图,将有上下限的图变为普通的网络流图,然后再跑费用流。 所以建图其实和有上下界的网络流一样的。。。 1, 阅读全文
posted @ 2018-06-13 08:50 ww3113306 阅读(292) 评论(0) 推荐(0) 编辑
摘要: ~~~题面~~~ 题解: 这是一道强题emmmm,做法非常巧妙,,,我也是看了好久大佬题解才看明白一点 首先考虑没有限制的情况,即n个老鼠可以在同一时刻吃同一块奶酪 对各个时间段拆点,连奶酪 > 老鼠(反过来也是一样的,只不过不方便),相连的奶酪要符合时间段的限制, 相当于把老鼠拆成很多个小时刻,连 阅读全文
posted @ 2018-06-13 08:31 ww3113306 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 1,checkpoint ,,,这个指令简直,,,相见恨晚啊,居然现在才发现,。。 好吧来介绍一下这个指令:checkpoint(检查点) 我们调试程序,常常会出现好不容易发现了错误,却已经跑完那个地方了,或者纯属手残直接跑到下一步了(就是我), 这时如果我们又要重新跑一遍来在错误处停下是很浪费时间 阅读全文
posted @ 2018-06-11 08:32 ww3113306 阅读(1047) 评论(0) 推荐(1) 编辑
知识共享许可协议
本作品采用知识共享署名-非商业性使用-禁止演绎 3.0 未本地化版本许可协议进行许可。