• 2024-11-152024.11.15 NOIP 模拟 - 模拟赛记录
    返乡(home)不给大样例是怕我找规律出答案吗?但是我还是找到规律了。题解说是结论题,但是这个结论即使观察小样例也很好猜(如果我是出题人就把样例打乱一下顺序)。首先考虑只有二维偏序时的最优放置方法:首先第一个数是不能重复的,因为一旦重复,第二个数无论怎么选,都会构成偏序;第二个
  • 2024-11-14跟贪心杂题爆了
    基本都抄的,窝怎么这么渺小啊AGC007F这种匹配可行性基本都是从后往前贪心,这样没有后效性。而我们考虑原序列的每个字符都对应了最后序列的一个区间(如果用上)。考虑把整个变化过程写成一个矩阵,并且将每个字符染上不同颜色。像这样:容易发现对于一条新的路径,我们尽可能与上一条
  • 2024-11-08鲜花:bitset求解高维偏序
    书接上回一维偏序直接做、二维偏序套线段树或归并排序、三维偏序可以树套树或者CDQ套树,那四维偏序呢?可以CDQ套树套树。那五维偏序呢?可以发现,无论是CDQ分治还是树,都很难再继续嵌套,再写下去不但码量巨大,还巨难调,效率还相当低。树或CDQ嵌套\(m\)维偏序时间复杂度为\(O(n
  • 2024-11-01CSP-S2024赛后总结
    $\color{#f39c11}A.决斗$赛时:题目要求游戏结束后剩余怪兽尽可能少,所以我们要将每个怪兽的价值充分发挥。很容易想到一种贪心:用第二小的数先打第一小的,再用第三小的打第二小,……以此类推。这样就能保证能被打掉的都消灭了。双指针维护即可。最后把每一种怪兽剩余的数量
  • 2024-10-07Note - 单 log 求排列全局三维偏序数量
    考虑容斥计数。令\(f_c\)为恰好\(c\)维偏序的数量。那么考虑\(i\)若对于\(j\)是\(x\)维偏序,那么\(j\)对于\(i\)就是\(3-x\)维偏序。于是可以知道有\(f_0=f_3,f_1=f_2\),进一步可以推出\(f_2+f_3=\frac{n(n-1)}{2}\)。那么接下来就要向\(f_2,f
  • 2024-10-032024.10.[2, 3]训练记录
    10.2上午noip模拟比赛是8:00开始的,人是8:40起床的。T1猜了结论,秒了。结论是,一开始按照倒序排,连续是\(1\)的段\(reverse\)成正序。这样逆序对最多。感觉做法太简单\(O(n\logn)\)肯定不放。于是想了\(O(n)\)做法。最开始有\(\dfrac{n*(n-1)}{2}\)个逆序对,按段考虑
  • 2024-09-29CDQ分治学习笔记
    CDQ分治学习笔记k维偏序问题求满足条件的二元组个数题意描述每个元素有\(k\)个值,要求满足(以\(k=2\)为例)\(a_j\lea_i,b_j\leb_i\)的点对个数。分析这实际上就是我们熟悉的逆序对问题,回忆一下我们是怎么处理的,首先来说,当\(a,b\)其中一个的含义是下标的时候可以直
  • 2024-09-19算法学习-CDQ分治
    对于二维偏序,为普通的求逆序对,只需要先排序一遍,然后树状数组或双指针即可而三位偏序甚至更高,则需要用CDQ分治,简单来说,就是将树状数组和双指针结合操作步骤如下:1.开始将数组按第一维排序,保证满足x性质2.在归并中,将左右分别按y排序,因为开始以x排序,所以保证了正确性,保证贡献从左
  • 2024-09-18关于一类偏序问题
    对于一类依赖偏序关系计算答案的问题,由于我们只关注元素之间的大小关系,从而可以通过特殊的枚举方式来避免多种情况分类讨论。常见方法有:\(\mathrm{<,>}\):通过从小到大的方式依次考虑元素。\(\mathrm{abs,max,min}\):通过拆成\(<\)或\(>\)的形式后,再从小到大考虑。
  • 2024-08-298.29 模拟赛
    S---【云智计划】---7月11日---模拟测#30div2【补题】-比赛-梦熊联盟(mna.wang)S---【云智计划】---7月11日---模拟测#30div1【补题】-比赛-梦熊联盟(mna.wang)预计\(100+70+0+50+45\),实际\(90+50+0+45+25\)。比赛复盘A一眼可做。分析了一下推出了一个三维偏序
  • 2024-08-232.基础优化技巧
    基础优化技巧1三分一般仍然是用二分+eps处理。01分数规划求解形如:有\(n\)个物品,每个物品有两个权值\(a,b\),选出一些物品,使得两个权值和的比值最大或最小。也就是另\(w_i=0/1\),最大化:\[\frac{\sumw_i\timesa_i}{\sumw_i\timesb_i}\]一般我们用二分答案处理,移项可得:
  • 2024-08-20序理论
    在\(sort\)的时候,我们的\(cmp\)函数应该满足\(<\)可什么是小于它需要满足什么性质才能等价于小于?序理论给出了严格的定义二元关系集合\(X\)和集合\(Y\)上的一个二元关系,\(G(R)\subseteqX\timesY=\{(x,y);x\inX,y\inY\}\)\(xRy\)成立当且仅当\((x,y
  • 2024-08-18题解:CF1630F Making It Bipartite
    题意图上有\(n\)个点,且具有点权,点权保证互不相同,若两个点点权有倍数关系,则两点之间有一边,问你最少删去多少个点能使图变为二分图。思路因为如果\(a\)是\(c\)的倍数且\(c\)是\(b\)的个数,所以\(a\)是\(c\)的倍数。由此可以看出,若\(a\)与\(b\)相连且\(b\)与
  • 2024-08-17二维偏序问题
    偏序关系:大概就是,满足自反性,反对称性,传递性。将严格偏序关系建图,可以得到一个DAG(有向无环图)二维偏序问题是:给定\(n\)个元素,每个元素有\(2\)个属性,定义某种偏序关系,对于所有\(x_i\),求\(x_j\precx_i\)的数量。一种基本的操作方法是,某个属性按大小排序,另一个属性利用树状
  • 2024-08-15浅谈偏序
    目录偏序和等价关系Dilworth定理定理1定理2(Dilworth定理)偏序和等价关系关系:设\(X\)是一个集合,\(X\)上的关系是\(X\)的元素的有序对集合\(X\timesX\)的子集\(R\)。我们把属于\(R\)的有序对\((a,b)\)写作\(aRb\)。把不属于\(R\)的有序对\((a,b)\)写作\(a\n
  • 2024-08-13cdq分治
    我觉得呢,cdq的本质就是在归并排序消掉一维的影响来处理多维偏序问题。既然本质跟二分有关,那很容易猜到cdq处理k维偏序的时间复杂度为\(O(Nlog^{k-1}N)\)三维偏序问题:形如:$求满足条件a_i<a_j,b_i<b_j,c_i<c_j且\(j!=i\)的j个数比较常考的就是三维偏序,一般做法就是sort消掉一
  • 2024-08-09[OI] 偏序
    \(n\)维偏序即给出若干个点对\((a_{i},b_{i},\cdots,n_{i})\),对每个\(i\)求出满足\(a_{j}\gta_{i},b_{j}\gtb_{i}\cdots,n_{j}\gtn_{i}\)的\(j\)的个数一维偏序直接用权值线段树或者树状数组.或者你直接离散化开桶前缀和.二维偏序考虑到先对全部点对按\(a_{i}\)
  • 2024-08-06【CDQ分治】【模板】三维偏序(陌上花开)
    P3810【模板】三维偏序(陌上花开)-洛谷|计算机科学教育新生态(luogu.com.cn)#include<bits/stdc++.h>usingnamespacestd;usingi64=longlong;template<typenameT>structBIT{#ifndeflowbit#definelowbit(x)(x&(-x));#endifintn;vector<T&
  • 2024-08-05lg省选计划笔记-基础优化技巧1
    基础优化技巧1三分求单峰函数极值点丢弃极值点一定不在的点,注意不能用于非严格单调的函数。由于区间长度可以随便取,可以把分段点取得很近,这个时候就相当于二分斜率前面比0大,极值点处等于0,后面小于001分数规划略。模型特征:答案是比率形式(取对数可以把根式和次方转换为乘
  • 2024-07-29数据结构优化DP
    51nod-基因匹配+luogu-【模板】最长公共子序列本题重在转化。由于最长公共子序列的下标是一个最长上升子序列,所以我们可以考虑把数字映射成下标,有多个就要倒序把每个值映射成多个不同的值,因为一个数有多种下标都是可取的。51nod-3976-最长序列与基本问题相同,但是需要根据长度插
  • 2024-07-23cdq分治
    简介前置芝士:归并排序。\(cdq\)分治是个离线算法,可以解决三维偏序或者优化\(dp\)。题目直接上个题目:陌上花开。维护三维偏序有个口诀:一维排序,二维归并,三位数据结构。考虑第一维直接排序解决掉,然后还剩两维。我们考虑第二维用归并排序解决掉。然后假设当前区间\([l,r]\),
  • 2024-07-10cdq分治
    cdq分治其大致形式为递归左右半边考虑左半边对右半边的影响二维偏序(归并排序):计算数对\((i,j)\)满足\(a_i<a_j\)并且\(b_i<b_j\)的数对数量先以\(a_i\)排序,这样条件被转换为\(i<j\)且\(b_i<b_j\)考虑cdq分治先递归左右半边对左右两边各开一个指针,若\(b_i<b_
  • 2024-07-09三维偏序的优秀做法
    感觉挺厉害的。我们使用\(f_i\)表示恰有\(i\)维满足偏序的数对\((x,y)\)的个数,\(g_i\)表示钦定\(i\)维满足偏序对的数对\((x,y)\)的个数。那么对于三维偏序:\[g_0=\dbinom{0}{0}f_0+\dbinom{1}{0}f_1+\dbinom{2}{0}f_2+\dbinom{3}{0}f_3=f_0+f_1+f_2+f_3\]\[g_1=\db
  • 2024-06-23【离散数学·关系】(复习)
    一、1.集合上的二元关系:集合A上的二元关系R是A×A的子集或从A到A的关系。2.笛卡尔积:A×B={(a,b)| 且}问:集合A有多少种关系? 种。(因为笛卡尔积A×A的基数为)3.aRb表示(a,b)R。4.other:二、关系的性质1.自反性:矩阵对角线上为1;2.对称性:矩阵关于主对角线对称;3.反对称性:说