![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
其他题库
Mininda
云雀叫了一整天
展开
-
【hdu2586】How far away? lca
题意:给棵树询问树上两点距离 lca 板子 #include<iostream> #include<algorithm> #include<cstring> #include<cstdio> #define lim 80500 using namespace std; int T,n,m,tot; int f[lim][31...原创 2017-12-31 11:56:14 · 235 阅读 · 0 评论 -
【cf914D】Bash and a Tough Math Puzzle 线段树
题目大意 给出一个序列a,要求支持单点修改,以及询问如果允许修改区间内的一个元素,区间gcd是否为x(可以理解为允许你暂时去掉区间一个元素,使区间gcd为x) 1 ≤ n ≤ 5*10^5 1 ≤ q ≤ 4·10^5 题解 一开始看题很萌比 后来看了题解发现自己是傻比系列 我们开一个线段树 每个节点记录当前区间的gcd,每次询问只要查一下当前区间的gcd是否为x如果不是就继续往下找,记录一下需...原创 2018-10-03 18:47:18 · 308 阅读 · 0 评论 -
【hdu6315】Naive Operations 线段树
题目大意 给定一个序列b,以及一个初值为0的序列a。要求支持a的区间+1以及区间询问a[i]/b[i]的和。 题解 我们考虑对开一个线段树,每个节点记录当前a区间最大的值maxa 以及最小的值minb,区间当前情况下的a[i]/b[i]的和cnt,以及lazy标记修改a序列。 每次修改的时候修改maxa。如果当前叶子结点a[i]>=b[i]那么就将b[i]+=b[i],cnt+1。一直等到a...原创 2018-10-03 18:29:14 · 258 阅读 · 0 评论 -
【zroj249】占领地区 模拟
题解 我们可以根据题意得到,一个炮会打x形的地方,所以我们分开处理将正负对角线,减去重合的格子即可。再用前缀和优化一下复杂度就降到了O(n+m) 代码 #include<iostream> #include<algorithm> #include<cstdio> #include<cstring> #include<cctyp...原创 2018-08-08 08:02:29 · 359 阅读 · 0 评论 -
【codevs1690】开关灯 线段树
原题 //codevs1690 开关灯 #include<iostream> #include<cstdio> #include<cstring> #define lson l,m,pos<<1 #define rson m+1,r,pos<<1|1 using namespace std; int n,m; int sum[500...原创 2018-02-18 15:13:11 · 342 阅读 · 0 评论 -
【codevs1299】切水果 线段树
原题 //codevs1299 切水果 #include<iostream> #include<cstdio> #include<cstring> #define lson l,m,pos<<1 #define rson m+1,r,pos<<1|1 using namespace std; int n,m; int sum[200...原创 2018-02-18 15:14:27 · 288 阅读 · 0 评论 -
【codevs1082】线段树练习3 线段树
原题 //codevs1082 线段树练习3 #include<iostream> #include<cstdio> #include<cstring> #define lson l,m,pos<<1 #define rson m+1,r,pos<<1|1 #define ll long long using namespace st...原创 2018-02-18 15:15:58 · 230 阅读 · 0 评论 -
【codevs1204】寻找子串位置 kmp
原题 //codevs1204 寻找子串位置 #include<iostream> #include<string> #include<cstring> #include<cstdio> using namespace std; string a,b; int n,m; int fail[101000]; void getfail() { ...原创 2018-02-18 15:48:41 · 306 阅读 · 0 评论 -
【hdu1698】just a hook
原题 线段树区间修改模版,不会的百度一下线段树懒惰标记! //hdu 1698 just a hook #include<iostream> #include<cstdio> #include<cstring> #define lson l,m,pos<<1 #define rson m+1,r,pos<<1|1 using ...原创 2018-02-18 15:11:09 · 503 阅读 · 0 评论 -
【hdu1166】排兵布阵 线段树
题目 线段树模版 //hdu1166 敌兵布阵 #include<iostream> #include<string> #include<cstdio> #include<cstring> #define lson l,m,pos<<1 #define rson m+1,r,pos<<1|1 using namespac...原创 2018-02-18 15:07:25 · 374 阅读 · 0 评论 -
【hdu2089】不要62 数位dp
传送门:嘿原题在这 注释写的很详细啦 #include<iostream> #include<cstdio> #include<cstring> using namespace std; int dp[10][2],a[10]; int l,r,tot; //pos表示当前位置,pre表示前一个数,sta表示当前的状态,也就是之前是否为6,lim...原创 2018-01-17 21:07:37 · 391 阅读 · 1 评论 -
【hdu4403】 A very hard Aoshu problem dfs
传送门:嘿原题在这 题意: 给一串数字,在里面加一个等于号和若干加号,问有多少种方案合法。 题解: 枚举=位置,搜索+位置 //hdu4403 A very hard Aoshu problem //by dadatu #include<iostream> #include<string> #include<cstdio> #includ...原创 2018-01-07 22:18:28 · 254 阅读 · 0 评论 -
【hdu1423】Greatest Common Increasing Subsequence dp
题意 给定两个序列,求其lcis 题解 我们用f[i][j]表示在a[1~i]中和b[1~j]中以b[j]结尾的lcis 每次转移 1 如果a[i]!=b[j] 那么就是这个更新的a[i]没啥子鸟用,f[i][j]=f[i-1][j]。 2 如果a[i]==b[j],那么我就要从j之前的序列b中选一个比b[j]小的k,每次比较一下 f[i][j]与f[i-1][k]+1进行替换 但这样做的话我们发...原创 2018-10-24 07:48:27 · 263 阅读 · 0 评论