zkw_51CTO博客
zkw是一个求最小费用最大流的一种又短又快的算法,很多情况下,虐暴spfa。
原创 2022-12-26 19:29:33
113阅读
题目:敌兵布阵 题意:给一个数组,然后有一系列操作:(1)把某一个值加上一个数,(2)把某一个值减去一个数,(3)求一段区间的和。#include <iostream> #include <string.h> #include <stdio.h> using namespace std; const int N=100005; int M; int
原创 2023-06-01 07:47:45
58阅读
【学习可以网上搜索ZKW统计的力量】【HDU 1166 敌兵布阵】#include using namespace std;const int maxn=500010;int T[maxn*4];int M;void pushup(int rt){ T[rt]=T[rt*2]+T[rt*2+1];}void Build(int n){ for(M=1;
原创 2022-04-20 10:15:19
52阅读
$zkw$ 线段树 参考博文 俗称 重口味 ,与 $KMP$ 类似,咳咳... 一、$ZKW$线段
原创 2023-01-08 00:17:50
69阅读
Text普通的费用流需要每增广一次,再用最短路算法更新距离。而ZKW则是在增广结束后直接倒回修改标号实际上,ZKW可以看作SA
原创 2017-10-26 21:22:06
60阅读
    #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; #define N 5001 #define M 50001 const int inf=1e9; int n,m,src,decc; in
转载 2021-08-05 11:51:44
61阅读
模板: 对二分图类型效率高// hdu 3667#include <iostream> #include <algorithm> #include <set> #include <map> #include <string.h> #include <queue> #include <sstream>
原创 2023-03-04 10:49:10
97阅读
建树 对于维护长度为 \(n\) 的序列,底层至少 \(n+2\) 个点。\(t_{N+i}\) 就代表下标 \(i\) 对应的叶子节点。底层的第一个节点的编号就是 \(N\),它是一个虚点。 计算一下可知 \(N\) 最多增加到 \(2n+2\),由于我们需要用到 \(t_{N+n+1}\)(为什 ...
转载 2021-10-08 14:58:00
238阅读
2评论
啊,是否疲倦了现在的线段树太弱,还递归!那我们就欢乐的学习另外一种神奇的线段树吧!(雾他叫做zkw线段树这个数据结构灰常好写(虽然线段树本身也特别好写……)速度快(貌似只在单点更新方面比线段树快……)是一种自底向上非递归版本的线段树!首先我们来看一个ppt,《统计的力量》这个是发明人的PPT(啊,p...
qt
原创 2021-07-16 14:57:23
460阅读
今天老蔡教了个高大上的ZKW线段树,于是我突发奇想想来写篇博客,算是对自己加深下理解才刚入门,所以就只讲一些入
原创 2023-04-24 09:57:37
91阅读
其实特别好理解,我们只要写一个数据结构(线段树)支持一下操作: 1.插入一个数$x$。 2.查询当前数据结构中最小的数的插入编号。 3.删除插入编号为$x$的数。 第一眼看成可持久化了 其实就是一个单点修改,区间(全局)查询的线段树。 zkw线段树在普通线段树的基础上进行了优化(卡常神器)。 我们记
原创 2021-05-29 20:34:34
467阅读
【题目链接】 http://poj.org/problem?id=1990 【题目大意】 给出每头奶牛的位置和至少要多少分贝的音量才能听到谈话 现在求奶牛两两交流成功需要的分贝*距离的总和。 【题解】 我们将奶牛对于需要的分贝排序,那么在计算的时候, 每头奶牛只要计算和序列前面所有奶牛的答案即可 那
转载 2017-01-21 00:16:00
38阅读
2评论
对于最小费用最大流,我们的通常做法是EK+SPFA。...
转载 2018-07-18 20:56:00
320阅读
2评论
题目链接:http://poj.org/problem?id=2195题意:每个人都走到一个
原创 2023-03-03 15:10:56
84阅读
【题目链接】 http://poj.org/problem?id=3264 【题目大意】 求区间最大值和最小值的差值 【题解】 线段树维护区间极值即可 【代码】
转载 2017-01-21 16:35:00
84阅读
2评论
#include <bits/stdc++.h>using namespace std;const int MAXN = 100005;const int MAXM = 200005;inline void read(int &num){ char ch; int flag=1; while(!isdigit(ch=getchar()))if(ch=...
原创 2023-02-20 16:46:05
73阅读
敌兵布阵每个工兵营地的人数C国都掌握的一清二楚,每个工兵营地的人数都有可能发生变动,可能增加或减少若干人手,但这些都
原创 2012-11-17 12:27:20
62阅读
一、ZKW线段树简介ZKW线段树是由清华大学张昆玮所创立的一种线段树储存结构,由于其基于非递归的实现方式以及精简的代码
原创 2022-10-28 10:20:36
718阅读
【题目链接】 http://acm.hdu.edu.cn/showproblem.php?pid=5820 【题目大意】 在一个大小为50000*50000的矩形中,有n个路灯。 询问是否每一对路灯之间存在一条道路,使得长度为|x1–x2|+|y1–y2|且每个拐弯点都是路灯。 【题解】 只要找到不
转载 2016-11-17 18:54:00
50阅读
Default Matrix Description 给定一个矩阵(初始为0),维护2个操作: 1. C x1 y1 x2 y2 (1 <= x1 <= x2 <= n, 1 <= y1 <= y2 <= n) ,以(x1,y1)为左上角,(x2,y2)为右上角的矩阵取反。 2. Q x y (1 <= x
原创 2012-11-19 08:33:32
137阅读
  • 1
  • 2
  • 3
  • 4