摘要: 1.引入 给出2个问题: 问题1: 问题2: 数据范围: 很显然,用 朴素的方法去模拟会超时,那么就需要一些更优秀的数据结构 ——树状数组 2.基本概念 给出一个数组 a[8]={1,2,3,4,5,6,7,8} 然后看图 在如图的一棵二叉树中,f[1]=a[1],f[3]=a[3],f[5]=a[ 阅读全文
posted @ 2023-07-23 14:07 wyh0721 阅读(58) 评论(1) 推荐(5)
摘要: 1 //树状数组单点修改和区间查询 2 #include <bits/stdc++.h> 3 using namespace std; 4 int n,m,f[1000005]; 5 int lowbit(int x) 6 { 7 return x&-x; 8 } 9 void add(int x, 阅读全文
posted @ 2023-07-22 15:57 wyh0721 阅读(18) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2023-07-21 16:10 wyh0721 阅读(7) 评论(0) 推荐(0)
摘要: 1.引入 先给出一个问题 给出样例: 方法1: 看到这个问题,我的第一个想法是按题意根据每一个询问暴力找出区间最大值,但很明显这是会超时的。 方法2: 当然也有快一点的方法,可以先预处理,将所有可能的区间最大值全求出来,然后再询问时输出。 具体的话就是先把每相邻两个的最大值求出来,然后将[1,2]最 阅读全文
posted @ 2023-07-21 15:21 wyh0721 阅读(82) 评论(0) 推荐(1)
摘要: 1.概念 递归,在计算机科学中是指一种通过重复将问题分解为同类的子问题而解决问题的方法。简单来说,递归表现为函数调用函数本身。 递归有“递”和“归”两个过程,用电影《盗梦空间》来比喻,一层层进入梦境可以理解为“递”,又一层层醒来可以理解成“归”。 2.代码 void f(参数) { if(边界条件) 阅读全文
posted @ 2023-07-21 10:52 wyh0721 阅读(92) 评论(0) 推荐(1)
摘要: 7.20做题记录 阅读全文
posted @ 2023-07-21 09:29 wyh0721 阅读(29) 评论(0) 推荐(1)