上一页 1 ··· 52 53 54 55 56 57 58 59 60 ··· 68 下一页
摘要: 这道题因为斜率可能不是一直递增,所以要用二分来维护 #include<iostream> #include<algorithm> #include<cstdio> #include<vector> using namespace std; typedef long long ll; const in 阅读全文
posted @ 2020-03-23 11:51 朝暮不思 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 这道题我刚开始打算是进行区间更新,但是发现不会维护开方,后来发现原来这道题是单点更新,因为开方几次后基本上就变成了1,这样我们只需要对一段区间都是1的情况直接返回 就能降低复杂度 #include<iostream> #include<map> #include<cstdio> #include<v 阅读全文
posted @ 2020-03-22 22:43 朝暮不思 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 这题我们很容易想到可以先求出x的取值,再进行比对看看是否可以 但是如果我们直接求出所有x的取值复杂度会超,因为求约数的复杂度较高 所以我们考虑先求去所以质因数,再通过dfs来求约数 之后进行比对即可。 #include<iostream> #include<string> using namespa 阅读全文
posted @ 2020-03-22 17:49 朝暮不思 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 这题要求求区间内的一个值,我们可以联想到用线段树维护区间,这样查找的复杂度低 这道题的难点不是线段树,而是我们应该维护哪个值,因为我们要求去的是l-r中ax和ay相等的最小距离,由此我们可以维护在当前位置前与他相等的最近的值是哪个位置,没有就是0 因此只需要遍历的时候用map维护pre值即可,但是本 阅读全文
posted @ 2020-03-21 22:06 朝暮不思 阅读(305) 评论(0) 推荐(0) 编辑
摘要: 这道题我开始的思路是采用普通向量的方法,来维护异或和,将赋值语句存到map中判定,之后再处理分奇偶处理询问 但是我发现了这个算法是错误的,因为这样我无法通过父节点维护子节点的赋值操作,比如 0 1 2,之后再对0赋值,这样其实1的值也知道了。 为了应对这个问题,可以考虑附加一个超级根节点n,将这个值 阅读全文
posted @ 2020-03-21 20:15 朝暮不思 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 对于这题,首先我们要明确的一点是,直接求面积肯定是不行的,所以要转化求,我们发现,其实整个多边形的面积就是与x轴所形成的两个矩形的差 而矩形的面积就可以用(a+b)*h/2来做,h就是相邻的x的差,那么只需要维护上底和下底就行了,我们发现,其实只需要维护一个等差数列就行了,这点很巧妙 因为我们的y值 阅读全文
posted @ 2020-03-20 22:24 朝暮不思 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 这道题我们发现其实就是单纯的求lca,但是唯一的问题是他有多个点的lca需要求,但是其实只需要求dfs序最大和最小的两个即可,因为dfs表示的是包含的关系。 本题可以用优先队列保存大小值也可以用set来维护 #include<iostream> #include<queue> #include<ma 阅读全文
posted @ 2020-03-20 09:10 朝暮不思 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 将式子转化成同余表达式,发现答案就是欧拉函数得约数 #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> using namespace std; typedef long long LL; LL 阅读全文
posted @ 2020-03-18 16:56 朝暮不思 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 裸题模板 #include<iostream> #include<queue> #include<map> #include<vector> #include<cstdio> #include<algorithm> #include<stack> #include<string> #include< 阅读全文
posted @ 2020-03-17 20:41 朝暮不思 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 与这道题相似的还有poj一道贴海报的题目,但这道题更加经典 典型的线段树合并求区间子段和模型,但是不同的是加了一个离散化,这也是最难的地方 本题思路: 1.设计lmax,rmax tmax来表示左边最长连续,总共最长连续和右边最长连续 2.设计懒标记为-1,0,1表示这区间是否都是黑或白或混合,如果 阅读全文
posted @ 2020-03-17 15:19 朝暮不思 阅读(174) 评论(0) 推荐(0) 编辑
上一页 1 ··· 52 53 54 55 56 57 58 59 60 ··· 68 下一页