想要抓住梦想,可醒悟总是太晚。
追踪最近的用户名外显变动记录。
最近的文章、讨论、云剪贴板与社区记录
> 与君共勉 距离 NOIP 还有一天,再做什么题也积累不了什么了,不如把自己刷过的题再看一遍,好好复习一下过去一年自己累积的知识和打的模拟赛,**不要让学过的在考场发挥不出效用。** 下面让我们开始复习吧! # 做一道题的流程(我的 ## 1 读题 可以先明确整个算法流程和细节,看看假没假,假了看情况要不要回 3.2…
在讨论《评测服务降级通知》回复:
qp
~~一眼秒了?~~ 分别记 $S_i,T_i,O_i$ 为 $-1,0,1$ 的个数前缀和。 考虑一个区间 $[l,r]$ 怎么填和值最大。 - 若 $T_r-T_{l-1}\leq k$ ,直接全填 $1$ ,和值为 $O_r-O_{l-1}+T_r-T_{l-1}-(S_r-S_{l-1})$ 。 - 若 $T_r…
补一下去年没看的 T2 ,然后发现很简单,~~虽然推公式推了很久。~~ 首先看这个题面就很懵逼,但其实只要抓住一个点: $a_i,b_i$ 怎样搞才会不合法? 这个可以很快想出来:考虑序列上的一段: $x_l,x_{l+1}...x_{r}$ 其中 $x_l=d_1,x_r=d_2$ 被固定,那么只要这样搞 $a,b$…
在讨论《关于 GD NOIP》回复:
@[_Fireflies_](luogu://user/918478) 有windows
~~构造题是不是只要对上电波就能做出来~~ 1.前缀和 以前了解过这种类似的构造方式:$0,+1,-2,+3,-4...$ ,若 $n$ 为偶数,这是易于构造的,奇数则不行。 2.前缀积 显然只有 $n$ 为素数时有解。 考虑逆元(~~很自然?~~), $n$ 为素数时,构造前缀积 $1,\frac{2}{1},\fr…
考虑每个数作为最小值,这样可做到不重不漏。 记录一个数论知识及证明手法,可用于带取整的式子证明:满足 $h\geq \lceil \frac{p}{i} \rceil$ 的最小正整数 $i=\lceil \frac{p}{h} \rceil$ 。 证明: 显然有: $$ h\geq \lceil h \rceil=\l…
先用脑子大概想一下场景,对于不同的 $X$ ,走的都是一段前缀,走路的贡献是恒定的,不同的只有前缀选了那些点。 于是考虑在从小到大枚举 $X$ 的同时维护所有前缀的答案,怎么维护呢?发现: $X$ 每加一,每一段前缀都会将前缀内还未选入的最大值选上,其实就是对于现存的前缀最大值做一个区间加,然后再把这个值丢掉,线段树二…
~~首先看到这个题就应该同时在两边从小到大分别加数。~~ 考虑每个数的贡献,发现是 $\binom{n-1}{i-1}$ ,中间权重大,两边权重小。 [奇妙の厌氧](https://www.luogu.com.cn/discuss/1108465)
最大次大值没赋 `-inf` ,寄。 抽象问题本质,每次操作给两张牌连一条无向边,最后必然形成一个森林,限制是相邻两点不同色,边权是两点点权和,构造森林最大化边权和。 直接智慧贪心,取最大的,设为 $mxi$ ,把 $mxi$ 作为一个根,把所有不同色的且和它边权和大于等于 $0$ 全部连到 $mxi$ 儿子上,再把和…
模拟赛时应该要过掉这题才对,只差最后一步就发现结论了,这也给出了警示:看数据找规律时**要先清楚自己想要怎样优化算法,根据对应的目标再去找对应的规律和性质。** 暴力是显然的,单步跳,每次修改 $O(n)$ ,判断是否全为 $0$ ,总 $O(n^2)$ 。 到这里赛时就开始瞎 jb 乱看规律了,导致好像看出了规律但又…
研究最大周期的性质,有结论:若最大周期存在,则最大周期 $=$ 全长 $-$ 最小不重叠 `border` 。 简单证明: 显然,最大周期只有可能 $\geq \lceil \frac{len}{2} \rceil$ 或为 $0$ ,当最大周期 $T$ 不为 $0$ 时,一个字符串 $S$ 可表示为 $Tr$ , 想要…
先考虑朴素 $\texttt{dp}$ ,设 $f_{i,j,0/1}$ 表示前缀 $i$ 当前 $i$ 匹配到了 $A_j$ ,此前是否有过完整匹配,$nxt_i$ 表示最大 `border` 长,有转移: $$ \begin{align} f_{i,j} &\rightarrow f_{i+1,nxt_j},f_{…
经典字符串题。 本问题等价于求解一个前缀 $i$ 的不同且不重叠 $\texttt{border}$ 个数,放到失配树上考虑,就是求每个点 $i$ 的一个祖先 $j$ 满足 $j\leq \frac{i}{2}$ 且深度最大的深度。 那么把树建出来搞一下就行。 ```cpp #include using namespa…
积累了一个新的感知: $1e9$ 可以往 `bitset` 上想。 考虑一个 $x\in [3,n]$ ,只要它被 $S$ 中的任意一个数整除,那么久将它标为 $1$ ,这样可以形成一个 `bool` 数组 $v$ ,那么满足条件的位置可以表达为将 $v$ 分别向左和向右移一位按位取与的结果。可以用 `bitset`…
考虑扩展欧拉定理: $$ ^i2\equiv 2^{[^{i-1}2\bmod \varphi(p)+\varphi(p)]} \pmod{p} $$ 可见 $^{i-1}2\bmod \varphi(p)$ 形成了一个子问题,递归即可。 ```cpp #include using namespace std; #de…
~~感觉码量会很大~~ 第一个操作直接线段树优化建图,但是这是在树上的路径向路径连边,所以要搞一个树剖把路径变为 $O(\log n)$ 个区间,然后就是有一些操作会被忽略,我们发现我们只需在最后跑一次最短路,并且略去忽略的操作后剩余的操作一和二互不影响,所以可以先做所有的操作二,同时把该忽略的操作忽略,然后在做操作一…
本题不带修,属于一个静态查询问题,考虑预处理,对于数列中的每一个 $x$ ,其得分和显然是固定的,然后随着 $x$ 的增大,数列会出现一个一个段并逐渐合并,这个过程能用并查集来维护,然后以段数为下标建立一个维护最小值的线段树或 $\texttt{ST}$ 表即可。
~~题面怎么改了啊啊啊,还我女装!!!~~ 设每个点的分数是 $d_u$ ,两条对于不女装的限制可以用数学语言重写: $$ 1. d_u\geq kd_v\\ 2. d_u\geq \frac{1}{k}d_v $$ 至于为什么可以差分约束,那是因为乘法和加法在这类问题可视为同构的,可以两边同时取对数理解: $$ 1.…
意淫一下感觉 $AB$ 应该是一条直径,然后枚举所有点找一下 $C$ 。 我不会证明。~~看题解吧。~~ ```cpp #include using namespace std; #define fio(x) freopen(x".in","r",stdin),freopen(x".out","w",stdout) #…
**update on 2025.11.14 以下到提示都是假做法** ~~易知这是求最小割,但我不会。~~ 以前做过一道类似的求左下角到右上角的拦截路径的题目,这题也尝试这么做,化边为点,可以得到类似这样的图: ```cpp o o | | o-o-o-o-o... | | o o | | o-o-o-o-o...…