摘要: 差分 在这之前了解过前缀和,比如a,b两个数组,b是a的前缀和,那么有: b[0] = a[0] b[1] = a[1] + a[0]= b[0] + a[1] b[2] = a[2] + a[1] + a[0]=b[1]+a[2] ………… 同样的,也可以通过递推关系式来计算b数组 b[i] = 阅读全文
posted @ 2021-05-07 21:56 kanbujian55 阅读(202) 评论(0) 推荐(0)
摘要: 数列区间最大值(线段树) https://www.acwing.com/problem/content/1272/ 线段树跟树状数组十分类似。 树状数组: 线段树: 起始无论是线段树还是树状数组,本质上都是数组,都可以进行区间计算和单点更新。那么这两者有什么区别吗? 1.根据图像我们可以看出,树状数 阅读全文
posted @ 2021-05-07 21:52 kanbujian55 阅读(63) 评论(0) 推荐(0)
摘要: 树状数组是前缀和在数值更新方向的一种进化: 假设给出一个数组a,b是该数组的前缀和,c是该数组的树状数组。 先给出树状数组的图解: 为什么要创建树状数组呢?我们知道,在前缀和b中,如果想要改变a的某一个位置元素的值,会对前缀和数组造成极大的影响,最坏的情况下一个元素的改变会对整个b数组产生影响,更新 阅读全文
posted @ 2021-05-07 21:50 kanbujian55 阅读(69) 评论(0) 推荐(0)
摘要: 判断日期 https://www.acwing.com/problem/content/1231/ 分析: 这个题的难点在于对于三个数,题目只要求输出三个序列, 按坐标表示就是0 1 2, 1 2 0, 2 1 0 但是还得满足一个条件,就是输出的这三个序列还得按照从小到大的顺序输出 ,这就无法直接 阅读全文
posted @ 2021-05-07 21:48 kanbujian55 阅读(256) 评论(0) 推荐(0)
摘要: 航班时间 https://www.acwing.com/problem/content/1233/ 视频:https://www.acwing.com/video/662/ 思路: 假设两地时差为t,出发时间为当地时间的t1 = h1:m1:s1,到达时间为当地的t2 = h2:m2:s2 返程的出 阅读全文
posted @ 2021-03-04 00:15 kanbujian55 阅读(75) 评论(0) 推荐(0)
摘要: 判断日期 https://www.acwing.com/problem/content/1231/ 分析: 这个题的难点在于对于三个数,题目只要求输出三个序列, 按座标表示就是0 1 2, 1 2 0, 2 1 0 但是还得满足一个条件,就是输出的这三个序列还得按照从小到大的顺序输出 ,这就无法直接 阅读全文
posted @ 2021-03-02 00:26 kanbujian55 阅读(51) 评论(0) 推荐(0)
摘要: 归并排序 https://www.acwing.com/problem/content/789/ 思想: 归并排序是把数组分成几个小的区间,进行排序,使之局部有序,之后两两合并,形成更大的局部有序,最后使之全局有序 所以总体来看,就是递归的思想,递归的方法: void merge_sort(int 阅读全文
posted @ 2021-03-01 00:47 kanbujian55 阅读(57) 评论(0) 推荐(0)
摘要: 回文日期 https://www.acwing.com/problem/content/468/ 视频:https://www.acwing.com/video/646/ 分析 又是一道枚举题,看题目,给出起始和截止的两个八位数,求出处于该范围内的回文数字。 看一下时间复杂度:最多需要遍历1e8个数 阅读全文
posted @ 2021-02-28 22:45 kanbujian55 阅读(70) 评论(0) 推荐(0)
摘要: 递增三元组——用统计量(前缀和)化简枚举 https://www.acwing.com/problem/content/1238/ 视频:https://www.acwing.com/video/644/ 题目要求很简单,给出三个数组,找出满足题意的所有组合的个数。 暴力枚举 刚开始没在意,直接暴力 阅读全文
posted @ 2021-02-27 02:51 kanbujian55 阅读(76) 评论(0) 推荐(0)
摘要: 波动数列 https://www.acwing.com/problem/content/1216/ 问题分析: 先明确题目所求:求满足条件的总方案数 需要满足的条件是:总长度为n,总和为s,后一项总是比前一项增加a或者减少b。 综合的来看,求的是方案数,又是很明显的数列运算,外加上很大的数据范围,d 阅读全文
posted @ 2021-02-26 02:17 kanbujian55 阅读(47) 评论(0) 推荐(0)