导航

随笔分类 -  二分查找

摘要:恢复内容开始 题意: 给了n个点,m条有向边。 接下来m行,每条边给起点终点与容量,以及一个标记。 标记为1则该边必须满容量,0表示可以在容量范围内任意流。 求: 从源点1号点到终点n号点的最小的可行流。 思路: ge 1.二分最小可行流【是复杂度偏高的一种】 《一种简易的方法求解流量有上下界的网络 阅读全文

posted @ 2016-04-14 19:45 tun~ 阅读(197) 评论(0) 推荐(0)

摘要:题意: k c m 分别代表挤奶机数量,牛数量,和挤奶机容量。 接下来(n=k+c)n*n的矩阵A,代表挤奶机或者牛的距离,如果对角线都为0,如果非对角线没有直接路相连也为0。 1 <= K <= 30 1 <= C <= 200 1 <= M <= 15 0<=Aij<=200 求:在机器不能过载 阅读全文

posted @ 2016-04-11 18:44 tun~ 阅读(211) 评论(0) 推荐(0)

摘要:题意: 一堆人用方块盖塔,有n个人每次只能加两块方块,有m个人每次只能加三块方块。要求每个人盖的塔的高度都不一样,保证所用方块数最少,求最高的塔的高度。 0<=n+m 0<=n,m<=1e6 思路: 根据容斥原理,n和m个人如果都按照等差为2或者3的序列盖塔的话那么重复的个数应该是塔高较小的那组除以 阅读全文

posted @ 2016-03-06 09:14 tun~ 阅读(235) 评论(0) 推荐(0)

摘要:题意: 给你一堆无序数,寻找它的一个子堆,使得子堆的平均数减中位数最大。 数字的个数n<=2e5 0<=xi<=1e6. 思路: 首先可以证明这堆数一定是奇数个,证明方法是尝试在奇数个的有序数列中加入一个数字求平均值和中位数各增加了多少。然后比较一下。 也可以考虑偶数个的序列去掉中间两个中较大的数, 阅读全文

posted @ 2016-03-06 08:23 tun~ 阅读(305) 评论(0) 推荐(0)

摘要:问了某明==shit中文题意不解释。因为数据的范围是1e9以内的所以我们可以通过二分的方法枚举可能的中位数。用二分法每次判断某一数字比中位数大还是比中位数小。判断方法是,枚举以第n个数为起点的差值,累计差值大于该该数字的数量。这里用到lower_bound进行统计==(这里也是二分)具体解释看代码.... 阅读全文

posted @ 2015-10-07 16:37 tun~ 阅读(168) 评论(0) 推荐(0)