• 2024-09-29P3368 【模板】树状数组 2
    #include<bits/stdc++.h>usingnamespacestd;#definexfirst#defineysecondtypedefpair<int,int>PII;typedeflonglongll;typedefunsignedlonglongull;typedefunsignedintuint;typedefvector<string>VS;typedefvector<int>
  • 2024-09-29P10589 楼兰图腾(树状数组)
    #include<bits/stdc++.h>usingnamespacestd;#definexfirst#defineysecondtypedefpair<int,int>PII;typedeflonglongll;typedefunsignedlonglongull;typedefunsignedintuint;typedefvector<string>VS;typedefvector<int>
  • 2024-09-26逆序对——树状数组
    逆序对题目描述猫猫TOM和小老鼠JERRY最近又较量上了,但是毕竟都是成年人,他们已经不喜欢再玩那种你追我赶的游戏,现在他们喜欢玩统计。最近,TOM老猫查阅到一个人类称之为“逆序对”的东西,这东西是这样定义的:对于给定的一段正整数序列,逆序对就是序列中\(a_i>a_j\)且\(i<j\)
  • 2024-09-26树状数组(Binary Indexed Tree, BIT)
    树状数组(BinaryIndexedTree,BIT)树状数组(BinaryIndexedTree,BIT),也称为FenwickTree,是一种用于高效处理数组前缀和查询和单点更新的数据结构。它能够在(O(\logn))时间内完成单点更新和前缀和查询操作。基本概念前缀和:给定一个数组a,前缀和prefix_sum[i]表示a[0]+
  • 2024-09-24二维树状数组
    单点增加,范围查询inttree[MAXN][MAXM];intnums[MAXN][MAXM];intn,m;intlowbit(inti){returni&-i;}voidadd(intx,inty,intv){for(inti=x;i<=n;i+=lowbit(i)){for(intj=y;j<=m;j+=lowbit(j)){
  • 2024-09-24[COCI2015-2016#2] VUDU
    [COCI2015-2016#2]VUDU题意求一个序列中有多少个子段平均数大于\(P\)。思路区间和相关的问题可以考虑前缀和。对于原序列前缀和序列\(a\),询问等价于求数对\((l,r)(l\ler)\)的个数,满足:\[\frac{a_r-a_{l-1}}{r-l+1}\geP\]移项整理得:\[a_r-Pr\gea_{l-1}-P(l-1)\]
  • 2024-09-24抛开线性回归模型,基于树模型来尝试构建回归模型,可视化绘制树状层级结构
    一提到回归,可能很多人第一时间脑海里想到的就是线性回归模型,的确,线性回归器可以说是非常常用的模型了。线性回归模型广泛应用于各种领域,如经济学、金融学、社会科学、工程学等。它可以用于预测、因果分析、趋势分析等。线性回归模型是一种广泛应用于统计学和机器学习中的预测模
  • 2024-09-22树状数组浅谈
    什么是树状数组树状数组是一种码量小,常数小,支持单点修改和区间查询的数据结构。树状数组维护的信息和运算需要满足结合律并且可差分注意gcd和max操作虽然满足结合律,但不可差分,因此不能使用树状数组维护其实,树状数组能做的,线段树都能做,线段树能做的,树状数组不一定能做,但线段树
  • 2024-09-22科研绘图系列:R语言树结构聚类热图(cluster heatmap)
    文章目录介绍加载R包导入数据数据预处理画图修改图形导出数据系统信息介绍热图结合树结构展示聚类结果通常用于展示数据集中的模式和关系,这种图形被称为聚类热图或层次聚类热图。在这种图中,热图部分显示了数据矩阵的颜色编码值,而树结构(通常称为树状图
  • 2024-09-19超级树状数组
    众所周知:线段树的代码长,常数大;树状数组的代码短,常数小,甚至可以通过\(10^6\)量级的数据。所以,能不能实现一个可以区间修改、区间查询的树状数组呢?由于涉及区间操作,考虑差分数组\(\{d_n\}\)。区间修改对于原数组\([l,r]\)区间每个数加\(w\)。可以转化为两次单点修改
  • 2024-09-16超级树状数组
    众所周知:线段树的代码长,常数大;树状数组的代码短,常数小,甚至可以通过10610^6
  • 2024-09-10树状数组求区间最大小值
    constintN=5e5+5;constintINF=0x3f3f3f3f;intn,q;inta[N],trmx[N],trmn[N];//将原来的累加改为求最值voidadd(intx,intk){while(x<=n){trmx[x]=max(trmx[x],k);trmn[x]=min(trmn[x],k);x+=lowbit(x);}}//区间查询最大/小值
  • 2024-09-08【算法笔记】树状数组/Binary Indexed Tree/Fenwick Tree
    前言树状数组,即树形存储的数组,又称BinaryIndexedTree或FenwickTree。抛开它树形的存储结构,这种神奇的数据结构的应用看起来与「树」没什么关系:有一个序列\(A=(A_1,A_2,\dots,A_N)\),在不超过\(\mathcalO(\logN)\)的时间复杂度内完成下列操作:\(\to~\)求\([L,R]\)区间内所
  • 2024-09-08【算法笔记】【专题】RMQ 问题:ST表/树状数组/线段树
    0.前言好久没更算法笔记专栏了,正好学了新算法来更新……这也是本专栏的第一个专题问题,涉及到三种数据结构,如果写得有问题请各位大佬多多指教,谢谢!1.关于RMQ问题RMQ的全称是RangeMinimum/MaximumQuery,即区间最大/最小值问题。本文中,我们的算法以求最大值为例(最小值基本
  • 2024-08-30树状数组
    树状数组用于变化区间的动态维护进行\(O(logn)\)的插入和删除。\(lowbit(x)\)表示二进制表示中最低位的1代表的值称为最小位值,实际上就是二进制表示中最低位的1代表的值称为最小位值二进制表示中最低位的1加上后面的0的值。设树状数组\(c\),\(c_i\)表示${\textstyle\sum
  • 2024-08-19层次聚类算法原理及Python实现
    层次聚类算法(HierarchicalClusteringMethod)是一种基于簇间相似度在不同层次上分析数据,从而形成树形聚类结构的算法。它主要分为两种形式:凝聚层次聚类(自下而上)和分裂层次聚类(自上而下)。以下将详细介绍凝聚层次聚类的原理与步骤:一、原理凝聚层次聚类算法的基本思想是将每个样
  • 2024-08-183-提高组
    提高组线性代数矩阵单位矩阵初等变换倍乘倍加对换矩阵加法矩阵乘法矩阵快速幂矩阵加速递推矩阵乘法优化Cache优化三角矩阵优化传递闭包优化分块矩阵优化高斯消元数据结构并查集路径压缩按秩合并按高度合并按大小合并可撤销并查集线
  • 2024-08-16网课-数据结构学习笔记2
    树状数组局限性:若区间信息不可减(即无法由两个前缀信息推出),树状数组就显得力不从心了。P6225[eJOI2019]异或橙子Trick:异或具有交换律、结合律,可拆开考虑每个位置的贡献。P3372【模板】线段树1算法:区修区查树状数组核心思想是将式子拆开,维护\(\sumc[i]\)与\(\sum
  • 2024-08-14刷题记录
    2024.8.13洛谷P2391白雪皑皑并查集维护序列连通性的一道好题。倒序操作,用并查集维护下一个未被染色的位置来染色。洛谷P3295[SCOI2016]萌萌哒并查集维护区间相等的限制使用类似ST表的结构,同一层内建并查集,把一段区间限制拆成log段限制直接维护下传时将本节点的左右儿
  • 2024-08-12「Day 7—离散化 & 树状数组 & 线段树」
    离散化定义离散化本质是一种哈希,是一种用来处理数据的方法。1.创建原数组的副本。2.将副本中的值从小到大排序。3.将排序好的副本去重。4.查找原数组的每一个元素在副本中的位置,位置即为排名,将其作为离散化后的值。B3694数列离散化代码#include<iostream>#include<algo
  • 2024-08-10散知识点总结(持更)
    有一些小trick,专门用一整篇博客来写不太合适,所以都放在这里吧。逆序对考试的时候树状数组做法显然比其他的都好写。考虑每个元素对答案的贡献,我们需要知道在它之前有多少元素比它大。我们只需要维护一个权值树状数组,在枚举到\(i\)的时候查询当前树状数组中的元素有多少比它
  • 2024-08-07刍议树状数组
    树状数组用处区间加,单点查询单点加,区间查询区间加,区间查询求逆序对……思想树状数组的思想对于线段树等结构来说比较抽象,所以我也懒得讲……在这我只讲一下我对于树组的理解,对于实战来说完全够用。先讲一个叫\(lowbit\)的东西,求一个数二进制下最后一个\(1\)的位置,比
  • 2024-08-05网课-基础优化技巧
    P3382三分三分等价于二分斜率。因此完全可以求导后直接做二分。01分数规划整体二分分治,对多个个体同时做二分。P3527[POI2011]MET-Meteors考虑对单个星球二分。则基础想法是以时间为线段树下标,在主席树中二分。考虑拓展到整体二分。则基础想法是二分时间,试着加入陨
  • 2024-08-04【进阶】树状数组的高阶应用
    1.离线树状数组介绍有一类经典问题:给定一个序列,每次询问一个区间内的元素种类数。这种题的做法有很多:莫队、分块、主席树……在不强制在线的情况下,他们的效率都较低,有一种效率高、空间小的离线做法:离线树状数组。例题:P1972[SDOI2009]HH的项链题目大意给定一个长度为\(n
  • 2024-08-04RAPTOR:索引树状RAG和递归推理检索系统
    RAPTOR论文和源码论文:https://arxiv.org/pdf/2401.18059代码:https://github.com/parthsarthi03/raptorRAPTOR(RECURSIVEABSTRACTIVEPROCESSINGFORTREE-ORGANIZEDRETRIEVAL),如这一论文标题中所述,这一方法是把文档按照树状结构进行索引组织,再使用递归推理来进行检索。RAP