"链接" 背景 " $Nguyen$ $Dinh$ $Tu$ , $2006.11.1$ , $SP$ $1043$ " 题意 给定一个数列,要求区间查询最大子段和。 解法 线段树模板。维护每个区间和 $sum$ 、区间最大子段和 $val$ 、区间从左端点开始向右的最大子段和 $lmax$ 、区间 ...
分类:
其他好文 时间:
2019-08-11 20:26:01
阅读次数:
117
"链接" 背景 " $huhao$ , $Luogu$ $P4513$ " 题意 给定一个数列,要求单点修改、区间查询最大子段和。 解法 线段树模板。维护每个区间和 $sum$ 、区间最大子段和 $val$ 、区间从左端点开始向右的最大子段和 $lmax$ 、区间从右端点开始向左的最大子段和 $rm ...
分类:
其他好文 时间:
2019-08-10 19:32:40
阅读次数:
52
学习来源 首先要明确树状数组的本质就是带修改的前缀和,它每次用 lowbit 来很巧妙的寻找所属前缀的位置 在这些位置+k 然后还是用 lowbit 来查询这段和应该属于的树状数组的位置。 最简单的就是单点更新和区间查询,或者区间更新 然后就是区间更新和单点查询 这个就要用到差分的思想了 差分学习 ...
分类:
编程语言 时间:
2019-08-09 23:17:33
阅读次数:
104
题目链接:http://codevs.cn/problem/1082/ 注意更新区间求和时,应该加上的是这一段区间包含的元素的个数乘以更新的值 ...
分类:
其他好文 时间:
2019-08-08 23:38:08
阅读次数:
120
"链接" 背景 " $Bin$ $Jin$ , $2007.8.3$ , $SP$ $1716$ " 题意 给定一个数列,要求单点修改、区间查询最大子段和。 解法 线段树模板。维护每个区间和 $sum$ 、区间最大子段和 $val$ 、区间从左端点开始向右的最大子段和 $lmax$ 、区间从右端点开 ...
分类:
其他好文 时间:
2019-08-08 23:15:05
阅读次数:
104
个人觉得非常棒的博客:https://www.cnblogs.com/xenny/p/9739600.html 第一类:单点更新,区间查询 例题:http://acm.hdu.edu.cn/showproblem.php?pid=1166 AC代码: 1 /* */ 2 # include <ios ...
分类:
编程语言 时间:
2019-08-08 21:14:54
阅读次数:
113
1317. 数列操作C ★★★ 输入文件:shuliec.in 输出文件:shuliec.out 简单对比时间限制:1 s 内存限制:128 MB 【题目描述】 假设有一个长度为 n(n≤100000) 的数列 A,支持如下两种操作: 1. 将 Ai,Ai+1,…,Aj 的值均增加 d 2. 查询 ...
分类:
其他好文 时间:
2019-08-06 11:10:16
阅读次数:
116
树状数组 lowbit(i)=i & -i ci=i-lowbit(i)+1 ~ i c1 2 3 4 5 6 7 8... for(1~i) sum+=ci 区间加值:i+lowbit(i) 修改单点 区间修改 在两个端点各加一个标记 区间查询 求1~i 前缀和 sumi sumi 线段树 像归并 ...
分类:
编程语言 时间:
2019-08-05 18:57:41
阅读次数:
99
很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。 这让很多学生很反感。 不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。 Input本题目包含多组测试,请处理到文件结束。 在每个测试的第一行, ...
分类:
其他好文 时间:
2019-08-02 13:03:54
阅读次数:
100
T1:string 第一眼秒出思路,这不就是排序那道题的加强版吗? 然而歪?解复杂度虽然是对的,但常数过大,竟被卡到70 歪?解:(实际上std写的就是这个,但据说std被卡掉了 OAO) 因为字符集很小,所以我们可以把区间排序改为区间查询和覆盖 即:先查询区间内所有字符的个数,再从左端点开始按照大 ...
分类:
其他好文 时间:
2019-08-02 09:22:15
阅读次数:
93