0103abc
0103abc 的网站
= 算法、题解与学习记录 =
文章列表
$nm\le 10^4$,所以考虑十分暴力的做法。 把所有在前门的人按照体力从小到大排序,让她们走到自己能走到的离后门最远的位置,然后把后门的人按照体力从小到大排序,判断是否每个人都能找到一个自己能走到的位置即可。 贪心正确性十分显然。直接模拟时间复杂度为 $O(n^2m^2)$,精细实现可以做到...
[弱化版:P13382 [GCJ 2011 Finals] Runs](https://www.luogu.com.cn/problem/P13382) 考虑连续段 dp。为了方便处理,这里把字符串 $s$ 离散化,记 $w$ 表示 $s$ 中最大的字符。 设 $f{i,j}$ 表示当前用了前...
建议先做 P7967。考虑连续段 dp。为了方便处理,这里把字符串 $s$ 离散化,记 $w$ 表示 $s$ 中最大的字符。 设 $f{i,j}$ 表示当前用了前 $i$ 个字符,当前有恰好 $j$ 个连续段的方案数。因为 $s$ 串被离散化了,所以初始条件为 $f{1,1}=1$。...
【模板】树上 Exchange-Argument,建议先做:AGC023F,CF277D,~~CBC020F~~ 考虑在某一时刻,已经确定了两个块内部的顺序,现在要给这两个块排序。设第一个块内有 $c1$ 个元素,其值分别为 $a1,a2,\ldots,a{c1}$;第二个块内有 $c2$...
比较简单的贪心。为了让构造的数 $t$ 的值尽量大,容易想到尽可能的让 $s,t$ 的公共前缀最大。而一个数 $x$ 是美丽数的充要条件是没有出现次数为奇数的数字。因此枚举这个最长的公共前缀位置 $k$,用前缀和判断 $\text{pre}(s,t)\ge k$ 是否可行。找到最大的满足条件的...
我怎么不会这个啊() 先考虑一个(~~并非~~)简单的情况:若参数序列 $q$ 满足 $q1<q2<\ldots<q_Q$ 即 $q$ 序列单调递增: 利用经典结论:对于任意正整数 $x,y$,下面两个情况中至少有一个成立: $x\bmod y=x$ $x\bmod y\le \frac x2$...
【模板】极角排序 把所有向量的起点平移到 $(0,0)$ 处,然后按 值(即 C++ 中 cmath 库里的 函数)将所有向量的中点排序。此时所有向量按照夹角度数从小到大排序。 此时有经典结论:最后的答案必然存在一条直线 $l$,使得不存在向量和 $l$ 共线,且选取 $l$...
【模板】极角排序 把所有向量的起点平移到 $(0,0)$ 处,然后按 值(即 C++ 中 cmath 库里的 函数)将所有向量的中点排序。此时所有向量按照夹角度数从小到大排序。 此时有经典结论:最后的答案必然存在一条直线 $l$,使得不存在向量和 $l$ 共线,且选取 $l$...
和另一篇带代码的题解实现好像不太一样() 把问题差分,答案为 $f(r)-f(l-1)$。问题在于求 $f(n)$ 的值: $n<10^7$:直接筛出来即可。 $n\in[10^7,10^8)$:此时有 $d(n)=8$,考虑分类讨论: $n=a^7$:此时合法的质数 $a$...
【模板】单位根反演(~~其实不太模板~~) 单位根反演的关键结论是:$n[n\mid k]=\sum\limits{i=0}^{n-1}{\omega{n}^{ik}}$,其中 $\omega_{n}$ 是在模意义下的单位根。具体来说有 $\omega\equiv...