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
Zjoi2012
插入类 dp 总结
插入类dp总结概念例题Permutation[ABC209F]Deforestation[CEOI2016]kangarooAntMan[JOIOpen2016]摩天大楼[
ZJOI2012
]波浪PhoenixandComputers
best_brain
·
2024-01-23 23:04
个人总结
内容总结
算法
c++
动态规划
经验分享
[学习笔记]支配树
首先不会成环,其次也不会是DAG即如果A支配C,B支配C,那么A和B之间必然有支配关系解法首先是DAG很好做:[
ZJOI2012
]灾难一般有向图:有环的存在,不能topo方法分三步:转化为找半支配点idom
weixin_34355715
·
2023-08-03 02:06
c/c++
数据结构与算法
BZOJ 2815【
ZJOI2012
灾难】
Description阿米巴是小强的好朋友。阿米巴和小强在草原上捉蚂蚱。小强突然想,如果蚂蚱被他们捉灭绝了,那么吃蚂蚱的小鸟就会饿死,而捕食小鸟的猛禽也会跟着灭绝,从而引发一系列的生态灾难。学过生物的阿米巴告诉小强,草原是一个极其稳定的生态系统。如果蚂蚱灭绝了,小鸟照样可以吃别的虫子,所以一个物种的灭绝并不一定会引发重大的灾难。我们现在从专业一点的角度来看这个问题。我们用一种叫做食物网的有向图来描
Woodstock_Cyber
·
2020-09-14 00:55
拓扑排序
lca在线算法
树上倍增
【
ZJOI2012
】灾难(拓扑+重新建树+lca)
(我怎么又双叒叕发烧了...)不难想到对于一个生产者它死了所有它的子树就都死了换句话说对于一个消费者它死当且仅当它的所有食物都死了什么时候所有食物都死了呢?——最顶端的生产者死了。否则,那消费者一定能至少找到一种食物假如我们能够建出这样的一颗树就是极好的不妨先来考虑建树的过程对于新加入的点now首先我们确定now是否为生产者否则将now放在食物们lca的儿子的地方即可那肯定不能直接1~n枚举这样找
Patrickpwq
·
2020-08-18 19:23
[luogu2173][
ZJOI2012
]网络(LCT)
题意 给出一张n(n≤10000)n(n\le10000)n(n≤10000)个点,m(m≤100000)m(m\le100000)m(m≤100000)条边的无向图,每条边有一种颜色,一共有C(C<10)C(C<10)C(Cusingnamespacestd;typedeflonglongll;boolFinish_read;templateinlinevoidread(T&x){
Effervescence
·
2020-08-17 19:26
LCT
【BZOJ2815】【
ZJOI2012
】灾难 阿米巴和小强题 动态倍增LCA 灾难树
广告:#includeintmain(){puts("转载请注明出处[vmurder]谢谢");puts("网址:blog.csdn.net/vmurder/article/details/44104163");}题意:原题面请见JSShining博客http://www.cnblogs.com/JS-Shining/archive/2013/01/12/2857429.html题解:我们构建一颗
空灰冰魂
·
2020-08-08 13:58
灾难树
lca
BZOJ 2657: [
Zjoi2012
]旅游(journey)【树DP找树的直径】
最开始没看懂题…看了这篇题解后才懂题…https://blog.csdn.net/Clove_unique/article/details/53004733将每个三角形看成点然后相邻的话就连边于是就得到一棵树,答案显然就是树的直径#includeusingnamespacestd;constintN=6e5+5;constintInf=1e18;intn,ans,cnt,f[N],g[N];int
Riypo_Yian
·
2020-07-30 10:55
BZOJ
动态规划-树形DP
动态规划与递推
洛谷 P2597 [
ZJOI2012
]灾难 解题报告
P2597[
ZJOI2012
]灾难题目描述阿米巴是小强的好朋友。阿米巴和小强在草原上捉蚂蚱。
weixin_30872789
·
2020-07-28 17:32
洛谷 P2173 [
ZJOI2012
]网络 解题报告
P2173[
ZJOI2012
]网络题目描述有一个无向图G,每个点有个权值,每条边有一个颜色。这个无向图满足以下两个条件:对于任意节点连出去的边中,相同颜色的边不超过两条。
bill_live
·
2020-07-28 17:43
洛谷 P2609 [
ZJOI2012
]数列 解题报告
P2609[
ZJOI2012
]数列题目描述小白和小蓝在一起上数学课,下课后老师留了一道作业,求下面这个数列的通项公式:A(0)=0A(1)=1A(2i)=A(i)(对于任意i>0)A(2i+1)=A(i
weixin_30426879
·
2020-07-28 16:31
BZOJ2816:[
ZJOI2012
]网络——题解
https://www.lydsy.com/JudgeOnline/problem.php?id=2816https://www.luogu.org/problemnew/show/P2173有一个无向图G,每个点有个权值,每条边有一个颜色。这个无向图满足以下两个条件:对于任意节点连出去的边中,相同颜色的边不超过两条。图中不存在同色的环,同色的环指相同颜色的边构成的环。在这个图上,你要支持以下三种
weixin_34344403
·
2020-06-28 17:24
P2597 [
ZJOI2012
]灾难(支配树)
题目链接题目大意就是在一个有向无环图上,具体我也说不清楚,看题目链接。目的学习支配树,支配树分三种,一个是树上,二是有向无环图,三是一般有向图,这里是针对的是有向无环图是的支配树的构造。代码:#include#include#include#include#include#include#include#definelllonglong#definemaxx65544usingnamespaces
coldfresh
·
2019-07-30 17:49
支配树
【BZOJ】2817: [
ZJOI2012
]波浪-DP
传送门:bzoj2817题解考虑拆去绝对值符号,而数列的相对大小波动如下:发现只有转折点的数有贡献,可以套用两个套路:从小到大插入去掉绝对值的影响DPDPDP只需要记录拆分成了几段(相对位置)设f[i][j][k]f[i][j][k]f[i][j][k]表示依次插入了1−i1-i1−i,分成了jjj段,差值之和为kkk的方案数:插入i+1i+1i+1时有以下情况:左右两边都有数,f[i][j][k
ccosi
·
2019-03-12 08:21
妙
计数DP
ZJOI2012
旅游 树的直径+建图
传送门这题神了。。。题意:在凸多边形中,画一条两个不相邻顶点之间的线段,使经过的三角形个数最多。题解:对于两个有公共边的三角形,可以发现若有一条直线穿过某个三角形并从公共边出去,则一定会选中两个三角形(显然)。而如果直线穿过的是另外两条边,就会和另外两条边外面的三角形连在一起。所以朝着有公共边的两个三角形连一条边。不难发现建出来的图是一棵树,而直线是不能分叉的,所以问题就转化为求这棵树的直径了。有
DyingShu
·
2018-10-06 16:30
图论
树的直径
【BZOJ】2815[
ZJOI2012
]灾难-灭绝树/支配树
传送门:bzoj2815支配树模板题解先拓扑排序,建立灭绝树,对于该树,满足如下定义:对于树中的每个节点,若该节点的生物灭绝,那么以它为跟的子树内的所有节点的生物都会跟着灭绝。按拓扑序倒序加入“灭绝树”,建的时候连在所有它的食物点的lca下即可(lca灭绝代表,所有它可以吃的都灭绝了)。代码#include#definegcgetchar()#definepbpush_backusingnames
ccosi
·
2018-05-12 19:15
灭绝树
支配树
[Luogu P2173] [
ZJOI2012
]网络
洛谷传送门题目描述有一个无向图G,每个点有个权值,每条边有一个颜色。这个无向图满足以下两个条件:对于任意节点连出去的边中,相同颜色的边不超过两条。图中不存在同色的环,同色的环指相同颜色的边构成的环。在这个图上,你要支持以下三种操作:修改一个节点的权值。修改一条边的颜色。查询由颜色c的边构成的图中,所有可能在节点u到节点v之间的简单路径上的节点的权值的最大值。输入输出格式输入格式:输入文件netwo
LPA20020220
·
2018-04-28 18:22
LCT
[bzoj] 2657
ZJOI2012
旅游 || bfs
原题题意:一个多边形,三角剖分,求一条对角线最多能经过多少三角形题解:因为不涉及坐标之类的,所以根几何肯定一点关系都没有。我们会发现,对于有共边的两个三角形,可以被同一条线穿过,而这就相当于这两个三角形之间有边。然后因为是多边形的三角剖分,所以最后只会有n-1条边。这样我们得到的就是一棵树了!然后呢,因为我们要求的是任意一条对角线经过最多的城市个数,显然,这就是要求树上最长的一条路径,也就是树的直
Mrha
·
2018-03-27 16:00
bzoj2658[
zjoi2012
]小蓝的好友(mrx)
–[
Zjoi2012
]小蓝的好友(mrx)2658:[
Zjoi2012
]小蓝的好友(mrx)TimeLimit:20SecMemoryLimit:128MBSubmit:404Solved:251[Submit
Effervescence
·
2018-02-15 08:49
Treap
【
ZJOI2012
】波浪 &【NOIP2017模拟9.2A组】赤壁情
Description:题解:首先知道对于每一个n的排列,它对应一棵笛卡尔树,而对于每一棵编号为1~n的有n个节点的笛卡尔树,也一定对应一个排列。这启发我们构这个排列相当于构一棵笛卡尔树,我们就从小往大加入节点。对于一个新加的节点要么自成一棵子树,要么合并两棵子树,要么贴到一棵子树的前后,每个位置所产生的赤壁之意不同,注意序列的首和尾需要特殊判断。状态大概是:fi,j,k,0/1,0/1表示弄了前
Cold_Chair
·
2017-09-05 19:07
动态规划
笛卡儿树
【
ZJOI2012
】波浪【NOIP2017】赤壁情
DescriptionDataConstraintSolution先来一波套路:①从小到大插入能够去掉绝对值的影响②dp只需要处理相对位置就可以记录答案。设fi,j,k,l表示当前做到i,段数(连续有数的被称作一段)为j,此时对答案贡献为k,左右两个边界有多少个被填上,满足这样的状态有多少种方案。大致分为以下几种情况:①当前插入的值自成一段没有贴边界,贡献为-2*i②当前插入的值自成一段有贴边界,
TARsier_Gu
·
2017-09-02 21:16
NOIP
ZJOI
[BZOJ2656][
ZJOI2012
]数列(高精度)
======这里放传送门======题解题目中给出的递推公式给了一个很重要的提示就是:每次递推Ai的时候,它下标数字的规模都是倍增或减半的。这样的话直接用一个递归来搞就好了。。根绝上面的结论,只需要递归log层就可以出解。要用记忆化搜索,搞一个map把已经求出来的高精度数字扔进去。只要高精不写错还是没问题的。。代码#include#include#include#includeusingnames
FromATP
·
2017-01-31 19:54
BZOJ
它只是想考你高精度
2815: [
ZJOI2012
]灾难
bz没有题面,,就不贴了==实际上有一种叫支配树的东西可以构造出答案,这题是支配树中最简单的==因为原图是个DAGblog传送门。。。。。。。。大概是首先求个拓扑序,由拓扑序建树,每个点在它所有食物中找LCA,然后把这个点放在LCA下就行了#include#include#include#include#include#include#includeusingnamespacestd;consti
CRZbulabula
·
2016-12-21 18:41
支配树
【
ZJOI2012
】小蓝的好友(mrx)
Description终于到达了这次选拔赛的最后一题,想必你已经厌倦了小蓝和小白的故事,为了回馈各位比赛选手,此题的主角是贯穿这次比赛的关键人物——小蓝的好友。在帮小蓝确定了旅游路线后,小蓝的好友也不会浪费这个难得的暑假。与小蓝不同,小蓝的好友并不想将时间花在旅游上,而是盯上了最近发行的即时战略游戏——SangoCraft。但在前往通关之路的道路上,一个小游戏挡住了小蓝的好友的步伐。“国家的战争其
Facico
·
2016-07-05 15:25
省选
treap
笛卡尔树
【
ZJOI2012
】小蓝的好友(mrx)
Description终于到达了这次选拔赛的最后一题,想必你已经厌倦了小蓝和小白的故事,为了回馈各位比赛选手,此题的主角是贯穿这次比赛的关键人物——小蓝的好友。在帮小蓝确定了旅游路线后,小蓝的好友也不会浪费这个难得的暑假。与小蓝不同,小蓝的好友并不想将时间花在旅游上,而是盯上了最近发行的即时战略游戏——SangoCraft。但在前往通关之路的道路上,一个小游戏挡住了小蓝的好友的步伐。“国家的战争其
doyouseeman
·
2016-07-05 15:00
treap
ZJOI
笛卡尔树
mrx
小蓝的好友
bzoj 2658: [
Zjoi2012
]小蓝的好友(mrx) Treap
Treap神题。。。首先将问题转化为补集即求不含一个坏点的矩形个数。 考虑这道题目的暴力;显然我们枚举矩形的下边界,得到每一列可以向上拓展多少(视为高度),用单调队列可以求出对于列i向左向右拓展到多少然后就能求出该下边界的答案了。 注意到如果把向左能拓展到的看成是在dfs一颗树时入栈的序号,向右能拓展到的看成是在dfs时出栈的序号,那么显然这可以看成一棵树的dfs序;由于特殊性
lych_cys
·
2016-05-30 14:00
treap
BZOJ 2657: [
Zjoi2012
]旅游(journey)
三角剖分转对偶图之后形成了树,问题转化为求树上最长链证明见14年论文#include #include #include #include #include #definerep(i,l,r)for(inti=l;i=l;i--) #definemmt(a,v)memset(a,v,sizeof(a)) #definetra(i,u)for(inti=head[u];i;i=e[i].next)
nlj1999
·
2016-05-11 17:00
BZOJ 2815 [
ZJOI2012
]灾难【灭绝树
【【然而bzoj上并没有题面】】【问题描述】阿米巴是小强的好朋友。阿米巴和小强在草原上捉蚂蚱。小强突然想,如果蚂蚱被他们捉灭绝了,那么吃蚂蚱的小鸟就会饿死,而捕食小鸟的猛禽也会跟着灭绝,从而引发一系列的生态灾难。学过生物的阿米巴告诉小强,草原是一个极其稳定的生态系统。如果蚂蚱灭绝了,小鸟照样可以吃别的虫子,所以一个物种的灭绝并不一定会引发重大的灾难。我们现在从专业一点的角度来看这个问题。我们用一种
Flaze_
·
2016-05-06 21:10
OI
拓扑序
LCA
BZOJ
图论
灭绝树
BZOJ2815: [
ZJOI2012
]灾难
一个月前打的今天才调试好。。。居然是一个SB错误重建树的深度没有修改。。。#include #include #include #include usingnamespacestd; charc; inlinevoidread(int&a) { a=0;doc=getchar();while(c'9'); while(c='0')a=(anext=Head[u];tp->u=v;Head[u]
liutian429073576
·
2016-04-05 20:00
【bzoj2816】[
ZJOI2012
]网络 LCT
题目描述Description有一个无向图G,每个点有个权值,每条边有一个颜色。这个无向图满足以下两个条件:1.对于任意节点连出去的边中,相同颜色的边不超过两条。2.图中不存在同色的环,同色的环指相同颜色的边构成的环。在这个图上,你要支持以下三种操作:0.修改一个节点的权值。1.修改一条边的颜色。2.查询由颜色c的边构成的图中,所有可能在节点u到节点v之间的简单路径上的节点的权值的最大值。输入描述
LOI_DQS
·
2016-03-31 19:00
bzoj 2656 [
Zjoi2012
]数列(sequence)(高精度)
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=2656 【题意】 计算大数递推式 【思路】 高精度 【代码】1#include 2#include 3#include 4usingnamespacestd; 5 6constintmaxn=105; 7constintbase=1e4; 8 9structBign{
hahalidaxin
·
2016-03-10 20:00
BZOJ2657: [
Zjoi2012
]旅游(journey)
我记得第一次看到这个题的时候我的小学弟把我们虐爆了后来发现这TM就是树的直径啊!!!日吗。。。#include #include #include #include usingnamespacestd; #defineSideside structside { intx,y; inlinefriendbooloperatorQ; intf[2100001]; intg[2100001]; char
liutian429073576
·
2016-02-27 10:00
BZOJ 2816 [
ZJOI2012
]网络
题目大意: 一个无向图, 每条边有颜色, 颜色不超过10种. 从一个点出发的同色边不超过2条, 且不存在同色环. 操作有修改一个点的权值, 修改某条边的颜色, 询问两点之间由某种颜色构成的简单路径上权值最大值. 简要分析: 围观这道题...发现相同颜色的构成了一坨链, 操作就是连接两条链, 断开一条链, 询问同一链上两点间最大值. 赤裸裸的数据结构题. 用Splay维护所有
·
2015-11-11 06:57
2012
[
ZJOI2012
]灾难
首先抽象一个超级源点S,他向所有源点都有一条有向边。然后就是建立一棵树,使得这棵树满足对于每个节点,在有向可拓扑图中说删掉他而使得源点不可达的节点都是以他为根的这棵子树中的节点。 建立这棵树的做法就是先将原图拓扑排序一次,然后按照拓扑序依次处理每个点,由于拓扑序的原因,每当处理到一个点,当前点的父节点一定在当前已建的树上,然
·
2015-11-02 19:02
2012
[
ZJOI2012
]旅游
看懂题意就好了。 就是相邻的城市连边,然后求图的直径。 /** * Problem:Journey * Author:Shun Yao * Time:2013.6.3 * Result:Accepted */ #include <cstring> #include <cstdio> #include <algorithm>
·
2015-11-02 19:01
2012
【
ZJOI2012
】【BZOJ2657】旅游(journey)
Description到了难得的暑假,为了庆祝小白在数学考试中取得的优异成绩,小蓝决定带小白出去旅游~~ 经过一番抉择,两人决定将T国作为他们的目的地。T国的国土可以用一个凸N边形来表示,N个顶点表示N个入境/出境口。T国包含N-2个城市,每个城市都是顶点均为N边形顶点的三角形(换而言之,城市组成了关于T国的一个三角剖分)。两人的旅游路线可以看做是连接N个顶点中不相邻两点的线段。 为了能够买到最
CreationAugust
·
2015-11-01 17:00
最长路
2815: [
ZJOI2012
]灾难 - BZOJ
题目描述 Description 阿米巴是小强的好朋友。 阿米巴和小强在草原上捉蚂蚱。小强突然想,如果蚂蚱被他们捉灭绝了,那么吃蚂蚱的小鸟就会饿死,而捕食小鸟的猛禽也会跟着灭绝,从而引发一系列的生态灾难。 学过生物的阿米巴告诉小强,草原是一个极其稳定的生态系统。如果蚂蚱灭绝了,小鸟照样可以吃
·
2015-11-01 14:45
2012
BZOJ3651 : 网络通信
同[
ZJOI2012
]网络,把每个点拆成C个点然后用LCT维护。
·
2015-10-31 16:30
网络通信
bzoj2658: [
Zjoi2012
]小蓝的好友(mrx)
传送门:http://www.lydsy.com:808/JudgeOnline/problem.php?id=2658思路:显然答案=总矩形数-没有点的矩形数然后可以考虑用扫描线,现在只计算边界在这条线上的举行书,对每个点记录一个高度h[i],表示这条线上的这个点能走多远。因为数据随机,所以我们可以用h[i]当treap的键值,至于平衡树的值,自然就是位置了。然后我们就可以根据h划分出很多大矩形
thy_asdf
·
2015-08-20 11:00
treap
【BZOJ 2657】 [
Zjoi2012
]旅游(journey)
2657:[
Zjoi2012
]旅游(journey)TimeLimit: 5Sec MemoryLimit: 128MBSubmit: 546 Solved: 351[Submit][Status]
Regina8023
·
2015-03-17 20:00
OI
bzoj
树的直径
建图
【BZOJ 2656】 [
Zjoi2012
]数列(sequence)
2656:[
Zjoi2012
]数列(sequence)TimeLimit: 2Sec MemoryLimit: 128MBSubmit: 940 Solved: 481[Submit][Status
Regina8023
·
2015-03-17 17:00
python
OI
bzoj
思路题
【BZOJ2815】【
ZJOI2012
】灾难 阿米巴和小强题 动态倍增LCA 灾难树
广告:#include intmain() { puts("转载请注明出处[vmurder]谢谢"); puts("网址:blog.csdn.net/vmurder/article/details/44104163"); }题意:原题面请见JSShining博客http://www.cnblogs.com/JS-Shining/archive/2013/01/12/2857429.html题解:我
Vmurder
·
2015-03-06 20:00
LCA
灾难
Zjoi2012
BZOJ2815
阿米巴和小强
【BZOJ2656】【
Zjoi2012
】数列(sequence) 水题,python水高精度
#include intmain() { puts("转载请注明出处"); puts("地址:blog.csdn.net/vmurder/article/details/43636437"); }题解:发现我们可以保证同时至多出现两个数A和A+1。然后记录这两个数的数目a、b。每次向下>>时,如果A是奇数,那么新的计数器就应该是a,a+b如果A是偶数,那么新的计数器就应该是a+b,b时间复杂度lo
Vmurder
·
2015-02-08 13:00
python
高精度
BZOJ2656
数列sequence
Zjoi2012
BZOJ 2656
ZJOI2012
数列(sequence) 高精度+记忆化搜索
题目大意:给定一个数列的通项公式,求数列的某一项高精度+记忆化搜索没说的其实不用记忆化搜索的但是既然写完了就写完了吧顺便学习了一下友元函数之类的东西--#include #include #include #include #include usingnamespacestd; classBig_Int{ private: intnum[110],cnt; public: Big_Int(int_
PoPoQQQ
·
2014-12-23 10:00
高精度
记忆化搜索
bzoj
BZOJ2656
BZOJ 2657
ZJOI2012
旅游(journey) 树形DP
题目大意:给定一个三角剖分之后的凸多边形,求连接凸多边形的两个顶点的线段能经过的最多的三角形数首先结论1:将相邻的三角形连边得到的一定是一棵树证明:如果此图出现环那么一定有一群三角形围成一圈那么就会在这些三角形的中间出现一些顶点这显然是不可能的结论2:连接两个三角形的线段经过的三角形等同于树上两个三角形路径上的所有点证明:不会自己画个图YY吧总之就是相邻的三角形连边然后O(n)搞出直径就行连边那里
PoPoQQQ
·
2014-12-09 12:00
树形DP
bzoj
BZOJ2657
【BZOJ】【P2656】【
ZJOI2012
】【数列(sequence)】【题解】
传送门:www.lydsy.com/JudgeOnline/problem.php?id=2656Python水题d={} deff(x): ifx==0: return0 ifx==1: return1 ifd.has_key(x): returnd[x] ifx%2==0: ans=f(x/2) d[x]=ans else: ans=f(x/2) ans+=f(x/2+1) d[x]=ans
u012732945
·
2014-06-03 16:00
python
bzoj
省选
BZOJ2815
ZJOI2012
灾难
【问题描述】 阿米巴是小强的好朋友。阿米巴和小强在草原上捉蚂蚱。小强突然想,如果蚂蚱被他们捉灭绝了,那么吃蚂蚱的小鸟就会饿死,而捕食小鸟的猛禽也会跟着灭绝,从而引发一系列的生态灾难。学过生物的阿米巴告诉小强,草原是一个极其稳定的生态系统。如果蚂蚱灭绝了,小鸟照样可以吃别的虫子,所以一个物种的灭绝并不一定会引发重大的灾难。我们现在从专业一点的角度来看这个问题。我们用一种叫做食物网的有向图来描述生物之
·
2013-01-12 11:00
2012
上一页
1
下一页
按字母分类:
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
其他