2025 gdsy 春季训练 5 - 数论
2025 gdsy 春季训练 5 - 数论
前言
因为我数论太烂了,所以写一篇随笔总结一下。
A - Eri and Expanded Sets
计数题。刻画合法条件。
观察到对一个集合进行操作,最后的结果一定是一个等差数列。
如果不是等差数列,则集合一定可以继续进行操作。
方差为 \(1\) 或集合只有 \(1\) 个数字,就是优秀的集合。
如何求最后结果的公差?首先如果相邻 \(2\) 个数字的差为偶数,则可以除以 \(2\)。
因此首先对所有差除以若干个 \(2\)。
不难猜到和 \(\gcd\) 有关,发现公差就是所有差的 \(\gcd\)。根据 \(\gcd(a-b,b-c)=\gcd((a-b)+(a-c),b-c)\),直接原序列做差分然后求 \(\gcd\)。左端点一定时,\(\gcd\) 为 \(1\) 的右端点一定是一段后缀。且随着左端点上升,右端点单调不降。
因此可以预处理 \(\gcd\) st 表,然后双指针。复杂度 \(O(n \log n)\)。
B - Josuke and Complete Graph
计数题。去重可以考虑只算最特别的情况,这样可以不算重复。
计算 \(\gcd(u,v), l \le u,v \le r\) 的颜色数。
注意到 \(l \le 10^9\) 非常奇怪。复杂度预计是 \(O(t \sqrt{l})\) 的。
对每个颜色,我们只需要找到最特殊的 \((u,v)\) 来计算就可以了。
即对于颜色 \(g\),我们只需要判定是否存在 \(l \le kg < (k+1)g \le r\)。
分 \(2\) 种情况;
- \(l \le g \le r\):此时 \(k=1\),可以解不等式得到所有 \(l \le g \le \lfloor \frac{r}{2} \rfloor\) 都是合法的颜色。
- \(g < l\):此时我们取 \(kg < l \le (k+1)g < (k+2)g \le r\) 的情况。\(k=\lfloor \frac{l-1}{g} \rfloor\)。可以整除分块,所有 \(k\) 相等的 \(g\) 分在一块,取 \((k+2)g \le r\) 的颜色为合法颜色。
时间复杂度 \(O(t\sqrt{l})\)。
C - LCM Sum (hard version)
计数题。不断缩小答案范围。
反过来求 \(\text{lcm}(i,j,k) < i+j+k\) 的数量。因为 \(i+j+k < 3k\),所以 \(\text{lcm}(i,j,k) = k\) or \(2k\)。
- \(\text{lcm} = k\)。
\(i,j\) 是 \(k\) 的因子且 \(i,j\ge l\)。
可以枚举 \(k\) 和 \(i\),求 \(j>i \land j\mid k\)。容易直接计算出所有合法 \(j\) 的个数。
枚举 \(i\) 而不是 \(j\) 的好处是对于每组询问,只要 \(i,k\) 合法,所有 \(j\) 也不会超出区间 \([l,r]\)。
把 \((i,k)\) 看作二维平面上的点,点有点权,每次询问数满足 \(l \le i < k \le r\) 的点的点权之和。
时间复杂度 \(O(n \log n)\)。
- \(\text{lcm} = 2k\)。
\(2k<i+j+k \Rightarrow i+j>k\)。
所以 \(j > \frac{k}{2}\)。\(j\) 不是 \(k\) 的因子。所以 \(j\) 分解质因数一定比 \(k\) 多一个 \(2\)。
\(\frac{j}{2}\) 是 \(k\) 的因子,所以 \(j\) 不超过 \(k\) 的因子个数个。
发现满足要求的 \(\frac{j}{2}\) 只能是 \(\frac{k}{3}\)。
所以 \(j = \frac{2}{3}k\)。
\(i\) 必须是 \(2k\) 的因子。而且 \(i> \frac{1}{3} \cdot \frac{1}{2}\cdot 2k \land i < \frac{2}{3} \cdot \frac{1}{2} \cdot 2k\)。
所以 \(i = \frac{1}{4} \cdot 2k\) or \(\frac{1}{5} \cdot 2k\)。
所以 \((i,j,k)\) 是 \((3d,4d,6d) 或 (6d,10d,15d)\) 的形式。
根据 \(l \le i,j,k \le r\) 解不等式即可。
本文来自博客园,作者:wing_heart,转载请注明原文链接:https://www.cnblogs.com/wingheart/p/18822143