E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
ZJOI2007
题解 [
ZJOI2007
]仓库建设(LOJ #10189 / 洛谷 P2120)【斜率优化DP】
题目链接:洛谷P2120/LOJ#10189题意自山顶向下有nnn个工厂,分别距离山顶X[i](X1=0)X[i](X_1=0)X[i](X1=0),内有P[i]P[i]P[i]份货物。现在要修建多个仓库,并将所有货物运送到不高于其所在工厂的仓库中;在各个工厂修仓库的费用分别为C[i]C[i]C[i],将每1份货物每运送1单位距离花费1。问最小总费用。n≤106n\leq10^6n≤106。题解记
破壁人五号
·
2020-08-10 00:10
#
DP-DP优化-斜率优化
题解
#
来源-各省省选
【bzoj1096-仓库建设】斜率优化
【bzoj1096-仓库建设】斜率优化dsy1096:[
ZJOI2007
]仓库建设【问题描述】L公司有N个工厂,由高到底分布在一座山上。如图所示,工厂1在山顶,工厂N在山脚。
KonjakJuruo
·
2020-08-09 23:08
【
ZJOI2007
】仓库建设(斜率优化dp)
设f[i]表示前i个仓库的货物处理完所需的最小花费。假设第k+1~i个仓库的货物集中在一起,那么只能是都搬到i仓库。那么此时:用给的x转化一下:设sump[i]表示前i个仓库的p之和,可以得到:设,那么整个式子就变成了:移项,可以得到:由于x[i]满足大于0且单调递增,而f[i]要求最小值,所以这里只要单调队列维护一个下凸包即可。#include#include#include#includeus
WWWengine
·
2020-08-09 19:09
动态规划
【题解】LuoGu2120:[
ZJOI2007
]仓库建设
原题传送门初学斜率优化好题先写出O(n2)O(n^2)O(n2)DP预处理si=∑j=1ixjpj,spi=∑j=1ipjs_i=\sum_{j=1}^{i}x_jp_j,sp_i=\sum_{j=1}^{i}p_jsi=∑j=1ixjpj,spi=∑j=1ipj转移方程:dp[i]=min(dpj−si+sj+xi(spi−spj))+cidp[i]=min(dp_j-s_i+s_j+x_i(s
ModestCoder_
·
2020-08-09 18:25
题解
LuoGu
DP
斜率优化
蒟蒻划水日志
mex主席树+思维3.ACluoguP4172[WC2006]水管局长LCT维护动态MST+离线下午:4.复习了一下后缀数组.5.更了15篇题解(期望真的好头疼)6.25上午:1.ACBZOJ1058[
ZJOI2007
weixin_30674525
·
2020-08-08 23:21
[BZOJ1057]
ZJOI2007
棋盘制作|DP|单调栈
这题好几天以前就看了,不过一直有一些细节想不通就没写下来。。首先发现棋盘矩阵上横纵坐标之和的奇偶性不同的点都是相反的,所以首先把横纵坐标之和为奇(或者是偶,这都不重要)的点取反,这样任务就变成了求一个最大全0或1的子矩阵。。先考虑一维的情况,h[i]表示以i为终点的最长连续0的长度,有h[i]=a[i]==0?h[i-1]+1:0,这样可以O(n)轻松求出。。拓展到高维,首先同样按照一维的方法,h
Tag_king
·
2020-08-08 13:30
BZOJ
Tree Generator™ CodeForces - 1149C (线段树,括号序列)
大意:给定括号序列,每次询问交换两个括号,求括号树的直径.用[
ZJOI2007
]捉迷藏的方法维护即可.
weixin_30673611
·
2020-08-08 02:21
bzoj1096: [
ZJOI2007
]仓库建设 (斜率优化dp)
Problem先有一些工厂,每个工厂有一些成品。先要在其中一些工厂的位置建立仓库,建立仓库会有一定的费用。每个没设立仓库的地方将成品运送至下面的仓库,费用为成品数乘距离。山脚一定有一个仓库。问最少需要的花费是多少工厂iii距离工厂111的距离xix_ixi(其中x1=0x_1=0x1=0);工厂iii目前已有成品数量pip_ipi;在工厂iii建立仓库的费用cic_ici。Solution设f[i
sunshiness_s
·
2020-08-07 18:48
dp
斜率优化dp
解题报告:luogu P2272 [
ZJOI2007
]最大半连通子图(tarjan缩点、递推DP、hash、set判重)
这时yxc上课时讲解的截图。一般用到tarjan算法的题目步骤都非常相似:tarjan算法缩点,建图(这里要判重)按照拓扑序递推(这里缩点以后逆向就已经是拓扑序了)/循环遍历新图求解答案。导出子图:点是原图的子集,边一定包含与子图中所有点有关的边。半联通子图:所有的两个点,我要么可以直接一条路过去,要么你可以直接过来。显然,对于任意一个强连通分量S∈GS\inGS∈G,它一定一个半连通子图,于是我
繁凡さん
·
2020-08-05 21:34
#
tarjan算法与连通图
#
强连通分量
缩点
BZOJ 1093 最大半连通子图(tarjan缩点 拓扑排序)
1093:[
ZJOI2007
]最大半连通子图TimeLimit:30SecMemoryLimit:162MBDescription一个有向图G=(V,E)称为半连通的(Semi-Connected),如果满足
w4149
·
2020-08-05 20:25
拓扑排序
BZOJ
—————图论—————
tarjan
BZOJ 1093: [
ZJOI2007
]最大半连通子图
TimeLimit:30SecMemoryLimit:162MBSubmit:4068Solved:1638[Submit][Status][Discuss]Description一个有向图G=(V,E)称为半连通的(Semi-Connected),如果满足:?u,v∈V,满足u→v或v→u,即对于图中任意两点u,v,存在一条u到v的有向路径或者从v到u的有向路径。若G’=(V’,E’)满足V’?
妖怪吧
·
2020-08-05 19:00
图论--tarjan强连通分量
1093: [
ZJOI2007
]最大半连通子图
无事闲来水一水Tarjan,结果水挂了。。。。。。先Tarjan缩点。第一问是DAG上的最长路径(点权)第二问是最长路径的方案数。都是DP。然而第二问坑了。。。。。。因为没判重边(很明显重新建图的时候会出现重边啊)毕竟还是弱啊。#include#include#include#includeusingnamespacestd;constintN=100000+5;constintM=1000000
nlj1999
·
2020-08-05 19:33
动态规划
强连通分量
[BZOJ1093][
ZJOI2007
]最大半连通子图 强联通+拓扑排序+dp 做题笔记
题目来源:http://www.lydsy.com/JudgeOnline/problem.php?id=1093Tarjan求scc,在缩点后的图跑拓排求最长链。在拓排树进行dp。拓排针对层级问题进行,先处理完了一个节点的前驱在处理该节点,除去了后效性,故可以在拓排树上dp。注意SCC缩点后可能有重边需特判。#include#include#include#include#includeusin
mhlwsk
·
2020-08-05 19:16
强联通
拓扑排序
DP
luogu P2272 [
ZJOI2007
]最大半连通子图
我们可以发现一个强联通分量内的点是可以任意到达的我们不妨把它缩成一个点这样子就成了一个DAGDAG当然这个时候也不要忘了判断缩点后的重边直接dp搞一下就好了#include#definepbpush_backusingnamespacestd;constintN=1e5+10;vectorG1[N],G2[N],kuai[N];intn,m,mod,be[N],color,size[N];intd
lunch__
·
2020-08-05 19:58
嘿嘿
1058:[
ZJOI2007
]报表统计TimeLimit:15SecMemoryLimit:162MBSubmit:3230Solved:1101[Submit][Status][Discuss]Description
窦小雨
·
2020-08-03 03:24
洛谷 P1110 [
ZJOI2007
]报表统计 解题报告
P1110[
ZJOI2007
]报表统计题目描述\(Q\)的妈妈是一个出纳,经常需要做一些统计报表的工作。今天是妈妈的生日,小\(Q\)希望可以帮妈妈分担一些工作,作为她的生日礼物之一。
weixin_30802171
·
2020-07-28 17:55
NOIP刷题
CF1064DLabyrinth考虑贪心,用双向队列bfs[NOIP2017]宝藏剪枝搜索出奇迹题解:https://www.cnblogs.com/fengxunling/p/9777606.htmlluogu有趣的数[
ZJOI2007
dimeitong1731
·
2020-07-15 22:56
【贪心】BZOJ1060(
ZJOI2007
)[时态同步]题解
题目概述有一棵有边权的有根树,现在从根开始传播JZ的神犇之力,经过一条边的时间是该边的边权。为了JZ神犇之力的平衡,要求神犇之力传播到所有叶子节点的时间相同。有一种操作是让某条边的边权增加11,求最少的操作数使得神犇之力平衡。解题报告肯定是要把所有叶子节点的时间都变成最长时间叶子节点的时间,而且为了少花费,操作必然是越上面越好,所以只需要先DFS一遍记录一下MAXiMAXi表示ii子树中叶子的的最
ZigZagK
·
2020-07-06 14:51
BZOJ题解
一般贪心
【洛谷1129】 [
ZJOI2007
]矩阵游戏
题面题目描述小Q是一个非常聪明的孩子,除了国际象棋,他还很喜欢玩一个电脑益智游戏――矩阵游戏。矩阵游戏在一个N*N黑白方阵进行(如同国际象棋一般,只是颜色是随意的)。每次可以对该矩阵进行两种操作:行交换操作:选择矩阵的任意两行,交换这两行(即交换对应格子的颜色)列交换操作:选择矩阵的任意两列,交换这两列(即交换对应格子的颜色)游戏的目标,即通过若干次操作,使得方阵的主对角线(左上角到右下角的连线)
小蒟蒻yyb
·
2020-07-05 04:32
洛谷
各省省选
二分图匹配
匈牙利算法
网络流
======题解======
BZOJ1095 [
ZJOI2007
]捉迷藏 动态点分治
每次修改一个点的黑白状态,询问树上最远黑点距离拿这个题做动态点分治模板题:(%%%PoPoQQQ大爷)点分治的过程是对树块找重心之后分成多个小树块,降低规模分别处理的过程,把链的信息收到其中“最高重心”上,从所有的重心处像分治中的不同子树索取到重心的链,就可以覆盖所有链的信息。动态点分治就像把序列分治变成线段树一样,在分治的架子上加了信息维护,实现树链信息维护与查询。需要什么?每个重心需要其每个分
liuguangzhe1999
·
2020-07-04 22:36
点分治
动态点分治
洛谷 P2056 [
ZJOI2007
]捉迷藏(动态点分治)
题目链接冒着滥用此题将封号的风险测了七发RP才过……每个点建两个双堆,堆a表示这个点所在的子树里所有点到他点分树中父亲的距离,堆b表示所有点分树子树中到他距离最大的个点的距离,堆c用来存全局答案,显然全局答案就是每个堆b中最大值和次大值的和点分树上暴跳父亲复杂度是log的,所以总复杂度是nlog2nnlog^2nnlog2n代码如下:#includeusingnamespacestd;inline
Philosophiofantasia
·
2020-07-02 16:16
洛谷
点分治/动态点分治
[BZOJ1058][
ZJOI2007
]报表统计(线段树+平衡树)
题目:我是超链接题解:被平衡树的思路局限了,本来想写两棵平衡树,其实只需要一棵线段树+一棵平衡树就好了对于MIN_GAP操作我们用线段树,叶子节点维护左端值,插入的时候修改右端点的值,然后维护区间最小值就好了对于MIN_SORT_GAP操作我们用平衡树维护大小关系1A真是满意代码:#include#include#include#defineINF1e9usingnamespacestd;cons
wwyx2001
·
2020-07-01 08:38
平衡树
省选
线段树
[
ZJOI2007
]报表统计 洛谷1110 splay+堆
题目Q的妈妈是一个出纳,经常需要做一些统计报表的工作。今天是妈妈的生日,小Q希望可以帮妈妈分担一些工作,作为她的生日礼物之一。经过仔细观察,小Q发现统计一张报表实际上是维护一个非负整数数列,并且进行一些查询操作。在最开始的时候,有一个长度为N的整数序列,并且有以下三种操作:INSERTik:在原数列的第i个元素后面添加一个新元素k;如果原数列的第i个元素已经添加了若干元素,则添加在这些元素的最后(
A_loud_name
·
2020-07-01 07:33
c++
洛谷
splay
堆
noip2019——动态规划刷题历程
有些技巧的)1.p2639[USACO09OCT]Bessie的体重问题-p1049取模意义下01背包技巧:重量=价值2.金明的预算问题——很经典了P1064金明的预算方案技巧:树形背包3.P1131[
ZJOI2007
weixin_30550271
·
2020-06-27 21:57
洛谷 P1131 [
ZJOI2007
]时态同步 树形DP
题目描述分析我们从根节点开始搜索,搜索到叶子节点,回溯的时候进行维护先维护节点的所有子节点到该节点最大边权(边权为叶子节点到同时到达它所需要时间)然后维护答案,答案为最大边权减去所有到子节点的边权。然后维护父节点的边权,父节点边权为该节点子节点的最大边权+父节点到该节点的时间。然后就回溯,重复操作,到根节点为止。代码#includeusingnamespacestd;constintmaxn=2e
liuchanglc
·
2020-06-27 21:00
P1131 [
ZJOI2007
]时态同步【树形dp】
时态同步从叶子到根节点统计修改次数。树形\(dp\)思想。题目描述小\(Q\)在电子工艺实习课上学习焊接电路板。一块电路板由若干个元件组成,我们不妨称之为节点,并将其用数字\(1,2,3…\).进行标号。电路板的各个节点由若干不相交的导线相连接,且对于电路板的任何两个节点,都存在且仅存在一条通路(通路指连接两个元件的导线序列)。在电路板上存在一个特殊的元件称为“激发器”。当激发器工作后,产生一个激
Vocanda
·
2020-06-27 21:00
洛谷 P1131 [
ZJOI2007
]时态同步(树形dp,贪心)
传送门解题思路唔,我才不要上网课呢很显然对于每个节点i,必须保证叶子节点到这个点的传送距离相等,才能保证最终答案都是相等,而最少的增加次数一定就是使距离全部变成其中最大的距离。好吧,解释的不清楚。如果没听懂,重新用贪心来解释一下。先想一下最终距离。设最终距离为d。最终的距离一定就等于叶子节点到根节点的距离的最大值。设节点u有两个儿子i、j(均为叶子节点),要是它们到根节点的距离相等且等于最终距离,
尹昱钦
·
2020-03-08 10:00
BZOJ-1095: [
ZJOI2007
]Hide 捉迷藏(括号序列+线段树)
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1095这道题可以用动态树分治水过去,但是代码量相当大,于是乎我偷懒用了括号序列的写法,好不容易A掉了额。(神奇的传送门:http://www.shuizilong.com/house/archives/bzoj-1095-zjoi2007hide-%E6%8D%89%E8%BF%B7%E8%97
AmadeusChan
·
2020-02-28 00:39
[
ZJOI2007
] 仓库建设 - 斜率优化dp
大脑真是个很优秀的器官,做事情之前总会想着这太难,真的逼着自己做下去,回头看看,其实也不过如此很朴素的斜率优化dp了首先要读懂题目(我的理解能力好BUG啊)然后设\(dp[i]\)表示处理完前\(i\)个家伙,并且在第\(i\)个家伙处建仓的答案那么有\[dp[i]=min_{j=1}^{i-1}\{dp[j]+\sum_{k=j+1}^{i-1}p[k]*(x[i]-x[k])\}+c[i]\]
Mollnn
·
2020-02-03 21:00
洛谷 P1129 [
ZJOI2007
]矩阵游戏(二分图匹配)
传送门解题思路我们可以先来到最终状态,第i,i位置都是黑色,然后考虑怎样可以转换过来,我们可以发现,当列与列交换时(a,b)(b,a)两个点可以通过a,b两列的交换得到正确的位置(a,a)(b,b),所以我们现在就是要确定是否每一行都对应着独特的一列。这就很显然了——二分图。行为A,列为B,黑色的点就连边,最后判断最大匹配是否为n即可。AC代码1#include2#include3#include
尹昱钦
·
2020-01-31 23:00
悬线法刷题记录
悬线法刷题记录最近学习了悬线法,用极大化思想解决最大子矩阵问题,一种dp问题,留个记录……讲的特别好的一个博客:极大化思想解决最大子矩阵问题例题:P1169[
ZJOI2007
]棋盘制作代码如下:1#include2
Angel_Kanade
·
2020-01-10 08:00
P1169 [
ZJOI2007
]棋盘制作
首先,传送门:https://www.luogu.com.cn/problem/P1169再说题目大意:在图里找到最大矩阵和最大正方形且都是1或0(大概懂就好了,我也说不清)emmm两模板题串一块了#includeusingnamespacestd;inta[2005][2005],l[2005][2005],r[2005][2005],up[2005][2005];intmain(){intn,
机房里的划水冠军
·
2019-12-19 21:00
[洛谷P1169][题解][
ZJOI2007
]午餐
这是题目吗?显然的DP,讲几个重要的地方1.贪心:让吃饭时间长的先排队(证明从略)2.状态:f[i][j][k]代表前i个人,一号时间j,二号时间k显然MLE所以压缩成f[i][j]代表前i个人,一号时间j,用前缀和维护时间,s[i]-j就是二号的时间Code:1#include2usingnamespacestd;3structPerson{4inttake,eat;5booloperatora
Konnyaku_ajh
·
2019-12-14 20:00
[洛谷P1169][题解][
ZJOI2007
]棋盘制作
我不是题目的说这道题运用了一种很巧妙的DP方式:悬线法如图,蓝色为悬线,黄色为向两边延伸的长度那么显然,最大子矩形的宽一定是这些黄线中最小的(证明从略)所以我们可以维护三个数组:Up[i][j]表示向上延伸的长度Left[i][j]表示向左能延伸到的最远横坐标Right[i][j]表示向右能延伸到的最远横坐标Code:1#include2#defineINF0x3f3f3f3f3usingname
Konnyaku_ajh
·
2019-12-14 18:00
[
ZJOI2007
]捉迷藏(动态点分治/(括号序列)(线段树))
题目描述Jiajia和Wind是一对恩爱的夫妻,并且他们有很多孩子。某天,Jiajia、Wind和孩子们决定在家里玩捉迷藏游戏。他们的家很大且构造很奇特,由N个屋子和N-1条双向走廊组成,这N-1条走廊的分布使得任意两个屋子都互相可达。游戏是这样进行的,孩子们负责躲藏,Jiajia负责找,而Wind负责操纵这N个屋子的灯。在起初的时候,所有的灯都没有被打开。每一次,孩子们只会躲藏在没有开灯的房间中
ezoi_ly
·
2019-12-07 10:00
Luogu P1129 [
ZJOI2007
]矩阵游戏
题目链接:传送门把111看做是行向列连边,需要使行列都有一个匹配交换行列并不会影响这个匹配,只是点的位置变了所以跑一个最大匹配就可以#include#defineA210usingnamespacestd;intT,n,g[A];boolm[A][A],vis[A];boolcheck(intx){for(inti=1;i>T;while(T--){intans=0;memset(g,0,size
良月澪二
·
2019-11-12 17:09
Luogu
网络流
最大匹配
【
ZJOI2007
】棋盘制作 - 悬线法
题目描述国际象棋是世界上最古老的博弈游戏之一,和中国的围棋、象棋以及日本的将棋同享盛名。据说国际象棋起源于易经的思想,棋盘是一个\(8\times8\)大小的黑白相间的方阵,对应八八六十四卦,黑白对应阴阳。而我们的主人公小Q,正是国际象棋的狂热爱好者。作为一个顶尖高手,他已不满足于普通的棋盘与规则,于是他跟他的好朋友小W决定将棋盘扩大以适应他们的新规则。小Q找到了一张由\(N\timesM\)个正
lrj124
·
2019-10-13 14:00
P1129 [
ZJOI2007
]矩阵游戏
二分图匹配P1129这个题还是有一定套路的将黑色格子所在的行和列连边,跑一边最大匹配,如果是完美匹配即可(所有点都是匹配点)why?在完美匹配的情况下假如列1->行5,列4->行1(->表示匹配)我们则可以将行5和行1换一下位置,这样交换列不会受到影响,匹配变为列1->行1,列4->行5同理,列2,列3,列4也可以通过和别人交换来搞到自己的菜证毕代码:#include#include#includ
Hs-black
·
2019-10-05 23:00
LG1131 「
ZJOI2007
」时态同步 树形DP
问题描述LG1131题解正难则反,把从一个点出发到叶子结点看做从叶子结点走到那个点。DP方程很显然。\(\mathrm{Code}\)#includeusingnamespacestd;#defineintlonglongvoidread(int&x){x=0;charch=1;intfh;while(ch!='-'&&(ch>'9'||ch='0'&&ch<='9')x=(x<<1)+(x<<3
liubainian
·
2019-09-27 21:00
[
ZJOI2007
]时态同步 题解
题面这道题是一道比较水的XXOI题;我们可以发现,反着思考题目就变为了让所有叶子节点同时发出信号,然后这些信号同时到达根节点;可以证明,这样答案不会改变;那么我们可以自下而上dfs(),设f[u]表示以u为根,可以到达的最远距离;那么很显然,对于点u,它对答案的贡献度就是num(它子节点的个数)*f[u]-sum(f[v]);实现也比较容易,但要注意开longlong;#include#defin
神之右大臣
·
2019-09-23 15:00
题解 P2272 【[
ZJOI2007
]最大半连通子图】
P2272[
ZJOI2007
]最大半连通子图萌新初学Tarjan,在《信息学奥赛一本通-提高篇》中看到这题,看到题解不多,便想发布一篇较为清新简洁的题解。
Randolph、
·
2019-07-16 20:00
【BZOJ】1059: [
ZJOI2007
]矩阵游戏-二分图匹配
传送门:bzoj1059题解忽略交换的具体过程,就是一个判断最后每行可以放在哪些位置的裸二分图匹配。代码#includeusingnamespacestd;constintN=202,inf=0x7f7f7f7f;inttk,n,bel[N],vs[N],tim;intg[N][N];intdfs(intx){for(inti=1;i<=n;++i)if(g[x][i]&&vs[i]!=tim){
ccosi
·
2019-04-09 10:45
二分图匹配
【
ZJOI2007
】仓库建设
DescriptionL公司有N个工厂,由高到底分布在一座山上。如图所示,工厂1在山顶,工厂N在山脚。由于这座山处于高原内陆地区(干燥少雨),L公司一般把产品直接堆放在露天,以节省费用。突然有一天,L公司的总裁L先生接到气象部门的电话,被告知三天之后将有一场暴雨,于是L先生决定紧急在某些工厂建立一些仓库以免产品被淋坏。由于地形的不同,在不同工厂建立仓库的费用可能是不同的。第i个工厂目前已有成品Pi
DancingZ
·
2018-10-26 20:08
一类斜率优化
单调队列优化dp
动态规划
斜率优化
【BZOJ1060】[
ZJOI2007
] 时态同步(树形DP)
点此看题面大致题意:给你一棵带权树,每次使用道具可以将某条边的边权加111,问你至少需要使用多少次道具,才能使每个叶子节点到根节点的距离相等。贪心的思想首先,我们应该先有一个贪心的思想。不难发现,如果要将以xxx为根节点的子树内的所有边权加上valvalval,不如直接将xxx到faxfa_xfax的边权加上valvalval更优。这样一来就有一个基本思路:对于以xxx为根节点的子树,我们只需用最
chenxiaoran666
·
2018-10-21 12:23
BZOJ
动态规划
洛谷P1169 [
ZJOI2007
]棋盘制作解题报告
题目描述国际象棋是世界上最古老的博弈游戏之一,和中国的围棋、象棋以及日本的将棋同享盛名。据说国际象棋起源于易经的思想,棋盘是一个8×8大小的黑白相间的方阵,对应八八六十四卦,黑白对应阴阳。而我们的主人公小Q,正是国际象棋的狂热爱好者。作为一个顶尖高手,他已不满足于普通的棋盘与规则,于是他跟他的好朋友小W决定将棋盘扩大以适应他们的新规则。小Q找到了一张由N×M个正方形的格子组成的矩形纸片,每个格子被
Jack_Mask
·
2018-10-19 19:22
悬线法
BZOJ 1057 [
ZJOI2007
]棋盘制作 最大子矩阵(悬线法)
棋盘制作题解:伪dp+dp+dp+悬线法悬线法推荐一篇国家队的论文《极大化思想解决最大子矩阵问题》讲的真是明明白白…#includeusingnamespacestd;constintN=2001;intn,m,square,rectangle;inta[N][N],Left[N][N],Right[N][N],l[N][N],r[N][N],h[N][N];intmain(){#ifndefON
Sqwlly
·
2018-10-15 22:52
算法
ACM
BZOJ
悬线法
ACM
【洛谷1110】[
ZJOI2007
] 报表统计(两棵平衡树)
点此看题面大致题意:有一个序列,三种操作。INSERTINSERTINSERT操作是在原数列第i+1i+1i+1个元素之前插入一个新元素kkk,MINMINMIN_GAPGAPGAP操作是查询相邻两个元素的之间差值的最小值,MINMINMIN_SORTSORTSORT_GAPGAPGAP操作是查询所有元素中最接近的两个元素的差值。两棵平衡树这道题我们可以用两棵TreapTreapTreap来分别维
chenxiaoran666
·
2018-10-14 08:04
洛谷
平衡树
[
ZJOI2007
]矩阵游戏
题目https://www.luogu.org/problemnew/show/P1129思路我们发现,我们把点看成匹配边的话,题目是要求每行每列要相互配对。若a[i][j]=1则add(i,j+n)代码#include#include#includeusingnamespacestd;constintmaxn=377;intlist[maxn*2],t,n,ans,cnt,match[maxn*
CE自动机
·
2018-10-12 08:45
题解
[Luogu P1131] [BZOJ 1060] [
ZJOI2007
]时态同步
洛谷传送门BZOJ传送门题目描述小QQ在电子工艺实习课上学习焊接电路板。一块电路板由若干个元件组成,我们不妨称之为节点,并将其用数字1,2,3…1,2,3…进行标号。电路板的各个节点由若干不相交的导线相连接,且对于电路板的任何两个节点,都存在且仅存在一条通路(通路指连接两个元件的导线序列)。在电路板上存在一个特殊的元件称为“激发器”。当激发器工作后,产生一个激励电流,通过导线传向每一个它所连接的节
LPA20020220
·
2018-09-11 11:49
动态规划
树形dp
【BZOJ1057】[
ZJOI2007
] 棋盘制作(单调栈的运用)
点此看题面大致题意:给你一个N∗MN*MN∗M的010101矩阵,要求你分别求出最大的010101相间的正方形和矩形(矩形也可以是正方形),并输出其面积。题解这题第一眼看去没什么思路,仔细想想,能发现这道题其实是一道单调栈的运用题。我们可以先对矩阵上的每一个元素进行预处理,求出以其为底的最长的010101柱。然后对矩形(正方形)的下界进行枚举,即枚举每一行作为矩形(正方形)的下边。此时,我们发现,
chenxiaoran666
·
2018-07-20 19:09
BZOJ
单调栈
上一页
1
2
3
4
5
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他