
OJ刷题日志
文章平均质量分 80
黄昏贩卖机
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
week10 树形数据结构与应用
树状数组 前缀和,当原数组进行修改的售后,需要付出O(n)的代价。 ti 也可以理解为其二进制的最低位的 1,与其后的 0 组成的 2 进制数 lowbit(i) = i&(~i+1) = i&-i 如果要查询区间 [1-i] 的和,需要树状数组进行多段拼接, 树状数组d中, d[i] 表示 (i -ti, i] 的和,令 y = i -ti, 那么左侧紧邻的一段为 (y-ty, y] ,直到 加上(0, x] 这个区间为止。 树状数组修改,当原数组a 中某元素 a[i] 修改时,原创 2022-05-23 17:31:53 · 100 阅读 · 0 评论 -
week 5-数学基础与方法应用
数学基础与方法应用数学基础取模运算位运算快速幂前缀和与差分前缀和二维前缀和差分尺取法 数学基础 取模运算 取模运算的一些性质: 位运算 快速幂 如果直接计算 abmodp,0<a,b,p<109a^b\quad mod\quad p,0 < a,b,p <10^9abmodp,0<a,b,p<109 long long qpow(long long a,long long b,long long p){ if(!b) return 1; // 向下递归, b不原创 2022-05-02 21:50:00 · 186 阅读 · 0 评论 -
week4
贪心算法 贪心算法有两种证明方法: 反证法 :交换项目中任意两个或者相邻两个元素,答案不会变的更好,则目前是最优解。 归纳法: 排序解法:用排序法常见的情况是输入一个包含几个权值的数组,通过排序然后遍历模拟计算的方法求出最优值。 后悔解法:思路是无论当前的选项是否最优都接受,然后进行比较,如果选择之后不是最优了,则反悔,舍弃掉这个选项;否则,正式接受。如此往复 区间调度问题 选择最早结束时间 ,或者最晚开始时间 从左向右选,一开始的选择范围是,是(-∞,+∞),每选择一个区间后原创 2022-04-28 17:32:55 · 107 阅读 · 0 评论