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
ACM-树状数组
Codeforces Round #263 (Div. 1) A B C
1遇到1,必定切断,依照这样去转移就可以C:
树状数组
,再利用启示式合并,开一个l,r记录当前被子左右下标。和一个flip表示是否翻转代码:A:#include#include
weixin_34415923
·
2020-08-24 11:52
Tree Requests
树状数组
+dfs搜索序
链接:http://codeforces.com/problemset/problem/570/DD.TreeRequeststimelimitpertest2secondsmemorylimitpertest256megabytesinputstandardinputoutputstandardoutputRomanplantedatreeconsistingofnvertices.Eachve
luckyone2014
·
2020-08-24 10:20
dfs
树状数组
HDU 6133 Army Formations
树状数组
+ 启发式合并
传送门:HDU6133题意:给你一棵n个节点的二叉树,每个节点要提交一个任务,需要花费一定的时间,每个节点都要提交这个节点和其子树所有的任务,从0时刻开始提交任务,每个任务提交时的罚时定义为该任务提交的时刻+该任务提交所需的时间。求每个节点提交完所有任务的最小罚时。思路:首先结合样例我们可以将题意转化为:对于每个节点,将其子树上所有点按权值从小到大排序,则所求结果为∑val[i]*(n-i),n为
WA是一笔财富
·
2020-08-24 09:11
hdu
线段树&&BIT&&平方分割
[dsu] codeforces 375D. Tree and Queries
题解:离线,回答以v为根的询问时,如果暴力把整棵子树的颜色存进
树状数组
,复杂度是O(n2logn)。
kg20006
·
2020-08-24 08:56
ACM
题解
NOIp2015提高组 解题报告
晚上写了一堆基础模板:spfa最短路径,prim和kruskal的最小生成树,hungary的二分图匹配,
树状数组
,kmp字符串匹配,等等。然后突然发现了一个叫做2-SAT的神奇算法。
jr_mz
·
2020-08-24 08:44
HDU 4777 Rabbit Kingdom(
树状数组
离线处理)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4777题目大意:一个兔子王国,有N只兔子,每只兔子有一个重量,如果两只兔子的重量不互质,那么就会干架,现在国王想将lr之间的兔子关进监狱,它想知道会有多少只兔子不会和别的兔子干架。也就是求l到r这个区间内有多少个数与所有数都互质题目解析:这题的思路真感觉是山路十八弯呀。后面学习了kuangbin大大的题
幻月瑶琴
·
2020-08-24 08:50
数据结构-树状数组
CF570D Tree Requests
离线+
树状数组
如果子树中的一个深度的所有点中有两个以上的字母出现了奇数次,那么这个询问的答案就是$No$,其他的情况吧都是$Yes$。
dashu497731727
·
2020-08-24 08:10
bzoj2716 [ Violet 3 ] --cdq分治+
树状数组
树状数组
打错调了一个小时。。。对于点(x,y),其它点只会在他的左下、右下、左上、右上四个方向上。我们只需求在左下方向上就可以了,因为其他方向可以通过改变相对位置求得。考虑cdq分治。
agsqv28660
·
2020-08-24 07:33
牛客算法周周练15 解题报告(ABD)
牛客算法周周练15A-数列下标(单调栈)牛客算法周周练15B-可持久化动态图上
树状数组
维护01背包(贪心)牛客算法周周练15D-树上求和(DFS序+线段树维护平方和)比赛AC了两题,然后A题跑暴力侥幸过了
_Hayasaka
·
2020-08-24 07:30
赛后报告
Codeforces-1076E:Vasya and a Tree(
树状数组
)
E.VasyaandaTreetimelimitpertest2secondsmemorylimitpertest256megabytesinputstandardinputoutputstandardoutputVasyahasatreeconsistingofnverticeswithrootinvertex1.Atfirstallverticeshas0writtenonit.Letd(i,
Mitsuha_
·
2020-08-24 07:45
数据结构-线段树//树状数组
算法导论学习笔记——2.3.1分治法——习题2-4逆序对数
前两天做
树状数组
和线段树专题时碰到过当时的做法如下思路:从前往后读,读一个数x,让a[x]+=1,然后让ans+=∑(i=x+1…n)a[i],这个地方用线段树或者
树状数组
优化降低时间复杂度为lgn再优化方法
so vegetable I am
·
2020-08-24 07:05
算法导论
[ 题解列表 ] GDUT-ACM集训题目
放在VirtualJudge上的专题:sum=7;[题解][
树状数组
]POJ2352-Starshttps://www.cnblogs.com/Kaidora/p/10389073.html[题解][BFS
aolei8784
·
2020-08-24 06:25
「NOIP2017」列队 //线段树
题解//
树状数组
的做法我不会呀写一写暴力一些的做法吧维护每一行和最后一列,于是需要实现的操作就变成了找到并删掉第k个数、把一个数
Starria
·
2020-08-24 05:12
线段树
四分树
1013:【模板】四分树(二维线段树/二维
树状数组
)时间限制:4Sec内存限制:512MB提交:4解决:2[提交][状态][讨论版][命题人:stone41123][Edit][TestData]题目描述给定一个
stone41123
·
2020-08-24 05:54
奇妙的四分树
hdu 3030 Increasing Speed Limits(
树状数组
求最长上升子序列)
在前边关于DP总结的文章中说了通过普通的DP法个二分查找法求最长上升子问题,最近在学习BIT,然后突然发现原来通过BIT也可以求最长上升子序列问题。本来想着可以通过类似的方法在O(nlogn)时间内求出,然而题目的意思是求出总和,这样的话二分法就不好使了,一开始也没有理解,不过通过单纯的求最长上升子序列,终于搞明白了。先来看看求解普通的最长上升子序列问题:题目中首先将重复的元素去掉,以为我们求的是
xueerfei
·
2020-08-23 21:26
树状数组/线段树
fzu oj 2236 第十四个目标
树状数组
好题 dp
题意:给定一个数组,求严格递增子序列的个数思路:根据经典的LIS问题,很快就可以设计出状态转移方程,dp[i]=sum(dp[j])+1,(0#include#includeusingnamespacestd;constintmaxn=100005;constintmod=1000000007;intn,cnt;inta[maxn],b[maxn],c[maxn],dp[maxn];intbin_
799050408
·
2020-08-23 21:12
DP
数据结构
P3902 递增(LIS+
树状数组
)
P3902递增尝试转化成已知的问题:如果原问题是非严格单调递增,则直接求出LISLISLIS的⻓度,从n中减去就行了。注意到这里的aiaiai都是整数,ai#include#include#include#include#include#include#definels(p=s;--i)//#defineint__int128usingnamespacestd;typedeflonglongll;
繁凡さん
·
2020-08-23 21:36
#
LCS
LIS
【HDU6635 Nonsense Time】
树状数组
维护最长上升子序列
以前都是直接dp的,这次用
树状数组
,居然也挺好用的。
树状数组
每个结点在变成树状之前,都表示以那个数字结尾的LIS。
树状数组
维护前缀最
YuanSnowing
·
2020-08-23 21:44
树状数组
LIS
最长上升子序列(LIS)的三种求法
但是如果权值如果不为1,n又非常大,则n²和二分都没法用了,但是可以使用
树状数组
来维护(貌似也是人尽皆知),这种做法的思想跟第一种n²很像,大的值,可以由前面小的值转移,这个时候使用
树状数组
维护,将原来的修改
brav0
·
2020-08-23 21:11
dp
P1020 导弹拦截 dp
树状数组
维护最长升序列
题目描述某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。输入导弹依次飞来的高度(雷达给出的高度数据是\le50000≤50000的正整数),计算这套系统最多能拦截多少导弹,如果要拦
weixin_30666943
·
2020-08-23 20:03
51nod 1376 最长递增子序列的数量
树状数组
数组A包含N个整数(可能包含相同的值)。设S为A的子序列且S中的元素是递增的,则S为A的递增子序列。如果S的长度是所有递增子序列中最长的,则称S为A的最长递增子序列(LIS)。A的LIS可能有很多个。例如A为:{13204},134,124均为A的LIS。给出数组A,求A的LIS有多少个。由于数量很大,输出Mod1000000007的结果即可。相同的数字在不同的位置,算作不同的,例如{112}答案
translata
·
2020-08-23 19:30
树状数组
【51NOD1376】—最长递增子序列的数量(
树状数组
)
传送门仔细回忆一下是怎么求最长递增子序列的?我们发现对于当前第iii位,用f[i]f[i]f[i]表示以iii为结尾的最长上升子序列的长度再用一个cntcntcnt表示数量那么当前f[i]=max(∑j=1nf[j]),cnt[i]=∑f[j]=f[i]cnt[j]f[i]=max(∑_{j=1}^{n}f[j]),cnt[i]=∑_{f[j]=f[i]}cnt[j]f[i]=max(∑j=1nf
Stargazer.
·
2020-08-23 18:43
51Nod - 1249 近似有序区间 (单调栈+
树状数组
+偏序)(好题)
题目链接极大极小子段,就是一个序列,它的最小值在最前面,它的最大值在最后面。现在给你一个由1~n的一个排列构成的数组S,求它有多少个这样的子段例如:S={3,1,2,5,4},S的所有极大极小子段为:{3},{1},{1,2},{1,2,5},{2},{2,5},{5},{4}Input第一行:一个数N,表示S的长度。(1=j&&i>=j,其中b【i】代表第i个数字作为最大值的最左的端点,d【i】
qq_42479630
·
2020-08-23 18:11
树状数组
树状数组
Binary Indexed Tree及相关LeetCode题目
关于我的Leetcode题目解答,代码前往Github:https://github.com/chenxiangcyr/leetcode-answers问题提出有一个数组nums[0...n-1],我们希望能提供如下两个功能:功能1:求出前i个元素的和sum功能2:改变某个元素的值,即nums[i]=x可以看出,功能1的时间复杂度为O(n),功能2的时间复杂度为O(1)。当然,为了改进功能1的时间
专职跑龙套
·
2020-08-23 18:42
51Nod - 1376 最长递增子序列的数量(
树状数组
+DP)*
题目链接:https://cn.vjudge.net/problem/51Nod-1376#includeusingnamespacestd;#definedebugputs("YES");#definerep(x,y,z)for(int(x)=(y);(x)y.len)return(*this);returnnode((y.cnt+cnt)%mod,len);}};structd{intnum,
等我学会后缀自动机
·
2020-08-23 18:13
其他OJ习题集
树状数组
动态规划之优化DP
【
树状数组
】51nod 1376 最长递增子序列的数量
通道思路:dp[i]由dp[i-1]而来,统计小于a[i]的位置k,且dp[k]+1=dp[i]的所有个数即可。代码:#include#include#includeusingnamespacestd;typedeflonglongll;templateinlineboolrd(T&ret){charc;intsgn;if(c=getchar(),c==EOF)returnfalse;while(
diwugi7576
·
2020-08-23 16:15
【做练习】最大上升子序列(
树状数组
)
树状数组
的原理及应用详解
1.题目总时间限制:1000ms内存限制:65536kB描述一个数的序列bi,当b1k2>...>kmk_1>k_2>...>k_mk1>k2>...>km则A[1:i]A[1:i]A[1:i]的求和即可写为C[2k1]+C[2k1+2k2]+...+C[2k1+2k2+...+2km]C[2^{k_1}]+C[2^{k_1}+2^{k_2}]+...+C[2^{k_1}+2^{k_2}+...+
埃蒙女王
·
2020-08-23 15:39
BZOJ3173: [Tjoi2013]最长上升子序列 Treap+
树状数组
BZOJ3173:[Tjoi2013]最长上升子序列TimeLimit:10SecMemoryLimit:128MBSubmit:1505Solved:784[Submit][Status][Discuss]题解:先用平衡树完成所有的插入操作,中序遍历的平衡树就是我们最后得到的序列,用f[i]表示以位置i为结尾的最长上升子序列是多少(nlogn)。因为后面插入的数越来越大,可以发现每个数在插入时所
Oakley_
·
2020-08-23 15:33
[
树状数组
求第K大][BZOJ 3173][TJOI 2013]最长上升子序列
而这样子就可以用
树状数组
维护,首
D_William
·
2020-08-23 15:50
fzoj 2236 第十四个目标 (
树状数组
&LIS&dp)好题
Problem2236第十四个目标Accept:14Submit:26TimeLimit:1000mSecMemoryLimit:32768KBProblemDescription目暮警官、妃英里、阿笠博士等人接连遭到不明身份之人的暗算,柯南追踪伤害阿笠博士的凶手,根据几起案件现场留下的线索发现凶手按照扑克牌的顺序行凶。在经过一系列的推理后,柯南发现受害者的名字均包含扑克牌的数值,且扑克牌的大小是
没有能与不能只有想与不想
·
2020-08-23 15:11
FZOJ
LIS.(最长上升子序列)
树状数组
好题
bzoj 1669: [Usaco2006 Oct]Hungry Cows饥饿的奶牛【dp+
树状数组
+hash】
最长上升子序列。虽然数据可以直接n方但是另写了个nlogn的转移:f[i]=max(f[j]+1)(a[j]#includeusingnamespacestd;constintN=5005;intn,a[N],f[N],ans;intread(){intr=0,f=1;charp=getchar();while(p>'9'||p='0'&&pf[i])f[i]=f[j]+1;ans=max(ans
weixin_30703911
·
2020-08-23 07:22
AtCoder Regular Contest 075 E - Meaningful Mean
树状数组
求顺序对, 前缀和
题目链接:http://arc075.contest.atcoder.jp/tasks/arc075_c题意:给你一个序列和一个数k,求有多少对l,r,使得a[l]+a[l+1]+...+a[r]的算术平均数大于等于k1≤N≤2×10^51≤K≤10^91≤ai≤10^9思路:首先对于所有数减去k,这样就不用除(r-l+1),然后我们发现所求的就是有多少对l,r,使得sum[r]-sum[l-1]
weixin_30535043
·
2020-08-23 07:08
ACM-
图论-拓扑排序
拓扑排序用于解决图论中有向图的一类序列问题。即在某一个有向图graph中,假设每一条有向边(u,v)代表节点u必须排在节点v的前面,那么按照这样的规则,将所有的节点进行排序,最终得出的序列就称为拓扑序。拓扑排序在ACM比赛和实际生活中都比较常见,只要能将事物抽象成有向图,并要求按规则排序,那么就可以考虑拓扑排序,比如选修课程的安排、按胜负排名次等。拓扑排序只适用于有向无环图,所以使用拓扑排序的第一
潜水的疯
·
2020-08-23 07:36
ACM-专题-图论
树状数组
求区间和(区间均值)
1658:O__O"…就是那道中文题TimeLimit:1SecMemoryLimit:128MB[Submit][Status][WebBoard]Description有一天某人得到了一组数据,然后烦人的是,有位同学老是询问某一段区间[L,r]范围的平均值(只要整数部分)==。某人无法解决,向你求救、Input多组测试,处理到文件末尾。一行一个n,m(n,m#includeusingnames
tb_youth
·
2020-08-23 07:28
zcmu
树状数组
我的算法模板(带分析博客)
(以下模版均有其对应的分析博客,点击标题即可跳转)数据结构篇1.并查集2.字典树3.线段树与
树状数组
4.ac自动机5.大根堆算法篇1.KMP算法2.素数处理3.gcd与扩展gcd4.二分查值法(1).最大化最小值
onlysky_yy
·
2020-08-23 06:35
算法
数据结构
算法与数据结构
树状数组
区间求和与区间最值
//
树状数组
区间求和//修改的时间复杂度为O(logn)查询的时间复杂度为O(logn)。/*lowbit函数这个函数的功能就是求某一个数的二进制表示中最低的一位1。
lang_a
·
2020-08-23 06:54
树状数组
从入门到入土
1.友好入门:我们为什么使用
树状数组
?(参考了http://hzwer.com/914.html)如果给定一个数组,要你求里面所有数的和,一般都会想到累加。
ddeneijvu948663112
·
2020-08-23 05:24
c/c++
数据结构与算法
Bzoj 1729 [Usaco2005 dec] Cow Patterns 牛的模式匹配
id=3167这题类似kmp,但匹配的时候不是直接的关键字匹配,而是排名的匹配,在kmp的基础上,每次比较相同或不同不是直接的关键字比较,而是用
树状数组
统计小于当前数和等于当前数的数量,如果对应相同,即排名相同
MintGreenTZ
·
2020-08-23 05:27
Bzoj
Poj
精妙
kmp
洛谷P3287 [SCOI2014]方伯伯的玉米田(
树状数组
)
传送门首先要发现,每一次选择拔高的区间都必须包含最右边的端点为什么呢?因为如果拔高了一段区间,那么这段区间对于它的左边是更优的,对它的右边会更劣,所以我们每一次选的区间都得包含最右边的端点我们枚举$i$表示考虑到第$i$个玉米,设$dp[j][k]$表示为$j$,$i$被覆盖次数为$k$时的最大长度,那么不难发现$j=h[i]+k$那么很明显转移是$dp[j][k]=max\{dp[a][b]\}
weixin_34292287
·
2020-08-23 03:26
[SCOI2014]方伯伯的玉米田 题解(
树状数组
优化dp)
Description方伯伯在自己的农田边散步,他突然发现田里的一排玉米非常的不美。这排玉米一共有N株,它们的高度参差不齐。方伯伯认为单调不下降序列很美,所以他决定先把一些玉米拔高,再把破坏美感的玉米拔除掉,使得剩下的玉米的高度构成一个单调不下降序列。方伯伯可以选择一个区间,把这个区间的玉米全部拔高1单位高度,他可以进行最多K次这样的操作。拔玉米则可以随意选择一个集合的玉米拔掉。问能最多剩多少株玉
weixin_30799995
·
2020-08-23 03:13
关于
树状数组
的几点总结
本文不一定适合初学者零、
树状数组
的基本概念1.概念:
树状数组
是一种支持对数列进行快速的区间操作(如:区间编号为1~10的值统一增加某个数)的数据结构。
Object_S
·
2020-08-23 03:56
A
--
知识点
A
--
模板
数据结构
--
树状数组
在
树状数组
中遍历查找
有一个
树状数组
如下$array=array('t1'=>'t2','t3'=>array('t4'=>'t5','t6'=>array('t7','t8','t9')),'t10
sudoers
·
2020-08-23 02:55
php
洛谷 P1714 切蛋糕(dp+RMQ)
传送门首先,很简单的dp方程:fi=max(si−sj)(j∈[i−m,i])然后发现si与j无关,可以提出来:fi=si−min(sj)(j∈[i−m,i])发现这个方程可以用数据结构优化,比如线段树,
树状数组
等等
stone41123
·
2020-08-23 02:54
DP真的不会想
跑得贼快的RMQ
day 1
1.
树状数组
。。。
soloier
·
2020-08-23 02:43
寒假
acm-
单词拼接
单词拼接时间限制:3000ms|内存限制:65535KB难度:5描述给你一些单词,请你判断能否把它们首尾串起来串成一串。前一个单词的结尾应该与下一个单词的道字母相同。如alohadogarachnidgophertigerrat可以拼接成:aloha.arachnid.dog.gopher.rat.tiger输入第一行是一个整数N(0importjava.util.Arrays;importjav
KeepLearningWqq
·
2020-08-23 02:39
acm
java
CF1181D Irrigation Intersection of Permutations
直接上
树状数组
套主席树即可在线解决这个问题,注意要回收空间。#inclu
pubgoso
·
2020-08-23 02:41
树套树
cf
acm
【二维
树状数组
优化dp】[Scoi2014] bzoj3594方伯伯的玉米田
终于方伯伯系列就只差逛商场了(两天的压轴题是人能做的?)这道题记得当时我去省选的时候还把n^2的算法写出来了的……现在想想真不容易==状态很好定义dp[i][j]表示已经处理完i根玉米拔高了j次剩下的玉米的最大值我去省选的时候想的转移是这样的(其实我不确定)dp[i][j]=max(dp[i-1][j],dp[k][j-1])(a[k]-a[i]==i)应该还有些乱七八糟的优化?反正总之n^2那1
MoeO3
·
2020-08-23 02:41
动态规划
经典问题之约瑟夫问题的快速解决
对于原问题模型,一有链表法解决问题,效率极低,在此描述一种用
树状数组
完成问题的超快速做法。
I_AM_HelloWord
·
2020-08-23 02:05
经典问题学习笔记
BZOJ 2434 ac自动机fail树+dfs序+
树状数组
+离线处理
对于一个询问,我们只需要把root到y这部分点,用dfs序插入
树状数组
,随后询问x的子树即可。对于多个
meopass
·
2020-08-23 02:47
数据结构
ac自动机
Codeforces 1181 D Irrigation 题解(
树状数组
+倍增)
题目:CF1181D.题目大意:有一个长度为mmm的计数数组aaa,初始均为000,并给定nnn个操作xxx表示让a[x]a[x]a[x]加111.现在还有一些操作,一个操作是在a[i]a[i]a[i]中找一个最小的位置ppp(有多个则去最小的满足条件的ppp),使得a[p]a[p]a[p]加111.现在有qqq个询问,问第kkk个操作(前nnn个操作也算入)时的ppp.1≤n,m,q≤5∗105
hezlik
·
2020-08-23 01:11
上一页
14
15
16
17
18
19
20
21
下一页
按字母分类:
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
其他