• 2025-01-09树状数组
    回顾一下以前不太明白的树状数组原理。以@Gcint-since2024大佬做的总结为参考。\(lowbit(x)\)表示\(x\)在二进制表示下从右往左第一个\(1\)及其后所有的\(0\)构成的数。记\(a[x]\)为原数组,\(tree[x]\)为树状数组:定义\(tree[x]\)表示以\(a[x]\)结尾,长度为
  • 2025-01-07P4175 [CTSC2008] 网络管理
    P4175[CTSC2008]网络管理Solution:存了半年,骂了半年的树上树套树还是在今天咬着牙写完了真是可恶首先我们来回顾一下如果不带修的话这题怎么做:对每个点维护一颗主席树,存rt->u这条路径上的边的权值。然后对于一个查询(x,y,k)在x+y-lca-fa[lca]这颗树上查第k大值.那么我
  • 2024-12-17树状数组学习笔记
    位运算是补码进行运算的因此可以解释负数进行位运算时的奇妙现象补码:正数的补码就是其本身负数的补码是在其原码的基础上,符号位不变,其余各位取反,最后+1.(即在反码的基础上+1)E:原码:10000001;补码:01111111.lowbit:lowbit这个函数的功能就是求某一个数的二进制表示
  • 2024-12-14树状数组详解
    概述树状数组(BinaryIndexedTree,简称BIT),是一种数据结构,用于处理区间查询和更新问题。它是一种可以高效地在对数级别时间复杂度内进行单点更新和区间查询的数据结构。树状数组通常用于解决以下两类问题:区间和查询:给定一个序列,查询序列中任意区间的和。区间更新:给定一个序
  • 2024-12-13【寻迹#7】树状数组
    树状数组一、简介树状数组是一种支持单点修改和区间查询的,代码量小的数据结构。普通树状数组维护的信息及运算要满足结合律且可差分,如加法(和)、乘法(积)、异或等。事实上,树状数组能解决的问题是线段树能解决的问题的子集:树状数组能做的,线段树一定能做;线段树能做的,树状数组
  • 2024-12-01树状数组
    树状数组作用:动态地维护前缀和查询Timecomplexity修改一个数:$$o(lgn)$$查询一段区间和:$$o(lgn)$$实现过程1lowbit返回一个数的二进制下末尾第一个1和后面的0构成的数如11011000100返回100=4intlowbit(intx){ returnx&(-x);}2建立树状数组定义$$t[x]$$保存
  • 2024-12-12slidev 导出前 安装playwright-chromium失败
    导出幻灯片|Slidev直接参考上述npmi-Dplaywright-chromium报错\[0/1]Installingplaywright-core@1.49.1[npminstall:runscript:error]playwright-chromium@latestruninstallnodeinstall.jserror:Error:Commandfailedwithexitcode1:nodeinstall.js更
  • 2024-12-12响应式设计的有哪些技巧?有哪些好处?
    响应式设计的技巧有很多,可以大致分为以下几类:1.流式布局(FluidLayouts):使用相对单位:避免使用像素(px)等固定单位,尽量使用百分比(%)、em、rem、vw、vh等相对单位。这使得元素尺寸能够根据视口大小进行调整。弹性布局(Flexbox)和网格布局(Grid):Flexbox擅长于一维布
  • 2024-12-09【C++算法】36.位运算_只出现一次的数字 II
    文章目录题目链接:题目描述:解法C++算法代码:解析题目链接:137.只出现一次的数字II题目描述:解法你必须设计并实现线性时间复杂度的算法且使用常数级空间来解决此问题。说明时间复杂度O(n),空间复杂度O(1)意外发现出现1次的那个数和所有比特位当前的和%3得
  • 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-22树状数组浅谈
    什么是树状数组树状数组是一种码量小,常数小,支持单点修改和区间查询的数据结构。树状数组维护的信息和运算需要满足结合律并且可差分注意gcd和max操作虽然满足结合律,但不可差分,因此不能使用树状数组维护其实,树状数组能做的,线段树都能做,线段树能做的,树状数组不一定能做,但线段树
  • 2024-09-18P2163 [SHOI2007] 园丁的烦恼
    中学的时候年轻气盛,应该拿主席树把这道题艹过去了。正好复习离线二维数点,再做了一遍。我们把询问差分安排到x轴上,然后y轴用树状数组统计即可。注意到此题要离散化,但是询问中的x可能不在原序列中。不过这不要紧,记得二分完减一就好。constintN=5e5+5,S=1e7+5;intn,m
  • 2024-09-14数据结构
    数据结构栈栈,一种基本的先进后出的线性数据结构,手写栈一般有一个指针指向栈顶元素。STL中有个容器叫stack,支持一些功能push,将元素放置在栈顶;top(),输出栈顶元素pop(),弹出栈顶元素size(),访问栈中元素clear,清空详细操作可以见栈手写栈可以用数组模拟栈,代码如下。
  • 2024-09-10CCPC Online 2024China, September, 8, 2024三道签到题
    网络赛复现地址:https://codeforces.com/gym/105336 L网络预选赛:做法:直接枚举两行两列即可代码:#include<bits/stdc++.h>usingnamespacestd;constintN=510;chara[N][N];intmain(){intn,m;cin>>n>>m;for(inti=0;i<n;i++)for