摘要: 【如果你不知道什么是树状数组:请点这里!!! #130. 树状数组 1 :单点修改,区间查询 这是一道模板题。 给定数列$a_1,a_2,\dots,a_n$,你需要进行m各操作,操作有两类: \(1\) \(i\) \(x\) :给定$i,x$,将$a_i$加上$x$; \(2\) \(l\) \ 阅读全文
posted @ 2021-05-13 11:53 h星宇 阅读(84) 评论(0) 推荐(0) 编辑
摘要: 差分是将数列中的每一项分别与前一项做差。 一维差分 例如$A:1,2,3,4,5,6$,差分后是$B:1,1,1,1,1,1$。 所以我们可以知道,对于一个给定的数列$A[]$,它的差分数列$B[]$为:\(B[1] = A[1],B[i] = A[i] - A[i-1]\)。(数列$A[]$是数列 阅读全文
posted @ 2021-05-13 10:20 h星宇 阅读(385) 评论(0) 推荐(0) 编辑
摘要: 什么是逆序对 逆序对就是如果$i>j&& a[i] <a[j]$,这两个数就是一个逆序对。其实换句话说,找到排在自己前面比自己大的数的个数。 给定一个$n$个数的序列,求解序列中逆序对的个数$n \leq 5 \times 105,a[i]\leq 109$。 输入样例 6 5 4 2 6 3 1 阅读全文
posted @ 2021-05-09 16:29 h星宇 阅读(72) 评论(0) 推荐(0) 编辑
摘要: 归并排序 归并排序(Merge sort)是建立在归并操作上的一种有效排序算法,它是采用分治算法的一个典型的应用。时间复杂度为$O(NlogN)$,代价是需要额外的内存空间。 算法理解 我们可以先看一个图 归并排序的思想:我们先对输入数组一直进行对半拆分,直到区间内只有一个元素的时候,一个元素肯定是 阅读全文
posted @ 2021-05-09 16:26 h星宇 阅读(36) 评论(0) 推荐(0) 编辑
摘要: 离散化有很大的局限性(目前以个人认知来说),几乎只适合在树状数组求逆序对使用。 离散化概念 离散化:把无限空间中有限的个体映射到有限的空间中去,以此提高算法的时空效率。 通俗的说,离散化是在不改变数据相对大小的条件下,对数据进行相应的缩小。 离散化实现 建立一个结构体包含$val$和$id$,$va 阅读全文
posted @ 2021-05-09 13:08 h星宇 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 树状数组 一维树状数组 ​ 首先,我们现在需要维护一个一维数组的前缀和,设$ans[i] = arr[1]+arr[2]+\cdots+arr[i]$。现在如果我们要修改任意一个元素$arr[i]$的值,则相关的前缀和$ans[i],ans[i+1],\cdots,ans[n]$都会发生变化。如果我 阅读全文
posted @ 2021-05-06 12:01 h星宇 阅读(52) 评论(0) 推荐(0) 编辑
摘要: 十大经典排序算法 排序算法可以分为内部排序和外部排序,内部排序时数据记录在内存中进行排序,而外部排序时因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等 阅读全文
posted @ 2021-04-26 22:28 h星宇 阅读(29) 评论(0) 推荐(0) 编辑
摘要: 前缀和是一个数组在某个下标之前的所有数组元素之和(包括此元素)。 差分是将数列中的每一项分别与前一项做差。 一维前缀和 定义式:\(b[i] = \sum_{j=0}^{i}a[j]\); 递推公式:\(b[0]=0; b[i] = b[i-1]+a[i]\); 初始化O(n): for(int i 阅读全文
posted @ 2021-04-25 01:18 h星宇 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 如果你不知道什么是枚举:传送门 P2089 猪猪 Hanke 特别喜欢吃烤鸡(本是同畜牲,相煎何太急!)Hanke 吃鸡很特别,为什么特别呢?因为他有$10$种配料(芥末、孜然等),每种配料可以放$1$到$3$克,任意烤鸡的美味程度为所有配料质量之和。现在, Hanke 想要知道,如果给你一个美味程 阅读全文
posted @ 2021-04-21 08:54 h星宇 阅读(339) 评论(0) 推荐(0) 编辑
摘要: 枚举 什么是枚举 ​ 枚举算法是我们在日常中使用最多的一种算法思想,它的核心思想是:枚举所有的可能,确定枚举对象、范围和判定条件;然后注意枚举可能的解并验证每个解是否是问题的解。 枚举的结构: ​ 循环+判断语句。 枚举算法的优点 枚举算法一般是现实生活问题的“直译”,所以比较直观,易于理解 枚举算 阅读全文
posted @ 2021-04-20 00:46 h星宇 阅读(1028) 评论(0) 推荐(0) 编辑