随笔分类 - 数据结构
摘要:题目大意 公墓可以看成一块N×M的矩形,矩形的每个格点,要么种着一棵常青树,要么是一块还没有归属的墓地。一块墓地的虔诚度是指以这块墓地为中心的十字架的数目,一个十字架可以看成中间是墓地,墓地的正上、正下、正左、正右都有恰好k棵常青树。小W希望知道他所管理的这片公墓中所有墓地的虔诚度总和是多少。1 ≤
阅读全文
摘要:【通过枚举的顺序,限定查询的范围,然后求和,可以用树状数组】
阅读全文
摘要:【利用前缀和的单调性,找分割点,可以用树状数组】
阅读全文
摘要:题目大意 有两个序列A,B,在A和B中各取一个数相加能得到$n^2$个和。求出这些和前n小的数字。 题解 首先这道题不可以用自己想的什么A序列B序列各两个指针的自己发明的模拟算法,用这样的算法只能是绝路一条。 此题入手点在于优化暴力。暴力算法是枚举所有的$A_i+B_j$,排个序,然后一个个输出。我
阅读全文
摘要:题目大意 有一个a*b的整数组成的矩阵,现请你从中找出一个n*n的正方形区域,使得该区域所有数中的最大值和最小值的差最小。 思路 我们从暴力入手,每次枚举每一个正方形,然后在这个正方形里枚举每一个点,得到最大最小值。时间复杂度在枚举正方形内的点上增加了不少,如何优化?我们很容易想到单调队列。问题就在
阅读全文
摘要:题目大意 动物王国中有三类动物 A,B,C,这三类动物的食物链构成了有趣的环形。A 吃 B,B吃 C,C 吃 A。现有 N 个动物,以 1 - N 编号。每个动物都是 A,B,C 中的一种,但是我们并不知道它到底是哪一种。有人用两种说法对这 N 个动物所构成的食物链关系进行描述:第一种说法是“1 X
阅读全文
摘要:【将一段区间内多个种类的操作 变为 对多个种类进行一段区间的操作】
阅读全文
摘要:题目大意 有一些衣服,它们有价格、正面的颜色和反面的颜色。现有一群顾客按顺序来买存在某颜色且价格最低的衣服(不存在则不会买),求每个顾客花了多少钱。 思路
阅读全文
摘要:【以对暴力算法的优化来考虑问题】
【只求区间的前缀,且满足区间可加性,可以用树状数组】
阅读全文
摘要:题目大意 给1到n的一个排列,按照某种顺序依次删除m个元素,你的任务是在每次删除一个元素之前统计整个序列的逆序对数。 思路
阅读全文
摘要:题目大意 有$n$个元素,第$i$个元素有$a_i,b_i,c_i$三个属性,设$f(i)$为$a_j<a_i,b_j<b_i,c_j<c_i$同时满足的数量。对于$d\in [0,n)$,求$f(i)=d$的数量。 思路
阅读全文
摘要:题目大意 给你一棵有根树,每个节点内有两个值:领导力和费用。现要求选择一个子树,并在子树内选择若干个节点,使得选择的节点的费用总和不超出预算,且子树的根的领导力乘以选择的节点的数量的值最大。 思路 由贪心思想,处理每个子树时,我们优先保留费用低的节点,当节点的总费用超出预算时,我们优先去除费用最高的
阅读全文
摘要:【异或的逆运算还是异或,维护异或前缀和来解决问题】
阅读全文
摘要:【判定答案,把无用的具体信息变为有用的粗略信息】
阅读全文
摘要:【将网格的二维问题转化为排和列的一维问题】
阅读全文
摘要:【数据结构内,一个节点代表多个值,操作节点,分裂节点】
阅读全文
摘要:题目大意 给出几个矩形对角端点坐标,求这些矩形整体覆盖的面积。 扫描线算法 整个平面被每个矩形的水平边所在直线(以后简称“水平线”)分成了几个部分,而整体覆盖面积则为每相邻的两个水平线间夹的长度(以后简称“夹长”)以及水平线所对应的一个或几个矩形水平边(以后简称“水平线段”)在水平线中所占的长度之积
阅读全文
摘要:题目大意 假设x1,x2,x3...代表程序中出现的变量,给定n个形如xi=xj或xi≠xj的变量相等/不等的约束条件,请判定是否可以分别为每一个变量赋予恰当的值,使得上述所有约束条件同时被满足。i,j<=1000000000, n<=1000000 思路 如果把所有相等的变量纳为一个或几个集合,那
阅读全文
摘要:题目大意 给出一个长度为N的非负整数序列A[i],对于所有1 ≤ k ≤ (N + 1) / 2,输出A[1], A[3], …, A[2k 1]的中位数。即前1,3,5,……个数的中位数。 题解 要找到中位数我们需要的序列是单调不减的,故可以用二叉平衡树解决。 cpp include includ
阅读全文
摘要:【将对一段区间内多种对象的查询 转化为 对多种对象在一段区间内的查询】
【线段树空间不够用,动态开点】
【可以通过排序将同一类对象放在一起,简化运算】
阅读全文

浙公网安备 33010602011771号