摘要:
可真是道恶心题…… 首先翻译一下6个任务: 1. 给出一个三角形,求它的外界圆。 2. 给出一个三角形,求它的内接圆。 3. 给出一个圆和一个点,求过这个点的切线的倾斜角$\alpha \in [0,180)$。(这个点可能在圆内或圆上) 4. 给出一条切线、圆上一点和圆的半径,求圆心位置。(此问题 阅读全文
摘要:
A Archery Tournament 一开始往化简公式的方向去想,结果没什么用。 考虑与一条垂线相交的圆的个数。不难YY,当圆的个数最多时,大概就是这个样子的: .png) 我们稍微推一下式子,然后就能发现其个数不超过$O(\log C)$,其中$C$为坐标范围(即1e9)。 接下来的事情就简单 阅读全文
摘要:
做的第一道交互题…… 首先,有解的一个必要条件是$a b$。否则,即当$ab$的情况。 标算 一个显然的思路就是在$n+1$次询问内确定一个人是honest的。这样可以再花$n 1$询问确定答案。 注意到一个性质: 若$p$说$q$是unkind的,那么$p$和$q$不可能都是honest的。 我们 阅读全文
摘要:
显然,对于所有跨度暴力扫一遍的复杂度本身只有$O(n \log n)$。 容易想到在每一个到达的位置加上覆盖这个位置的区间数。剩下的问题就在于如何处理覆盖了多个位置的区间。 记录已访问或去重都是难以实现的。但注意到一个性质: 所有长度不小于跨度的区间一定都能被访问到,所有长度小于跨度的区间至多访问一 阅读全文
摘要:
把所有数字放入双端队列后,结果大概是这样一个排列: $$P_1 1 P_2$$ 其中$P_1$是递减序列,$P_2$是递增序列。 我们以$1$所在的位置$k$分割最终的排列$A$。 其中前半部分,形象地讲是由两个递减序列交织在一起组成的。那两个递减序列分别是$P_1$的前缀和$P_2$的后缀,且至少 阅读全文
该文被密码保护。 阅读全文
摘要:
首先感谢题解小哥,他在标算外又总结了三种做法。 此处仅提及最后一种做法。 首先考虑题目中要求的所有结点度数为奇数的限制。 对于每一个联通块,因为所有结点总度数是偶数,所以总结点数也必须是偶数的。即所有联通块都要是偶数大小。 而考虑任意一个偶数大小的联通块,我们任意取它的一个生成树,然后进行如下算法: 阅读全文
摘要:
实际上这题的题面还是颇有意思,对两个划分不同的定义暗示了第二类斯特林数,模数是$1000000007$又表明这题不是NTT。 那么一开始的想法是考虑每个集合的贡献。设这个集合为$S$,那么它的贡献为$|S|\begin{Bmatrix}n |S|\\k 1 \end{Bmatrix} \sum_{i 阅读全文
摘要:
记本题数组长度为$n$,权值大小为$m$。 首先,暴力显然是$O(n^2)$的。 先瞄一眼tag,然后发现这是FFT。 显然,问题的关键在于要满足i,j,k之间的位置关系。于是考虑分治FFT。但遗憾的是,我们的分治FFT是对权值进行多项式乘法的,分治并不能使得FFT的规模减小。因此,分治做法在复杂度 阅读全文
摘要:
首先,容易得到判断一个子串为“good k d sequence”的方法: 子串中没有重复元素,且所有元素模d相等。 记mx为除以d的最大值,mn为除以d的最小值,则$mx mn 为避免出现重复元素,线段树上二分时有限制。 特判$d=0$的情况。 时间复杂度$O(nlogn)$。 cpp inclu 阅读全文