加载中...

ABC 448 EF

E - Simple Division

涉及到数论同余式与乘法逆元的知识,基础太差了不太会做qwq。。。

计算 \(\lfloor \frac{N}{M} \rfloor\ \space \%\space 10007\)

由于 \(\lfloor \frac{N}{M} \rfloor = \frac{N - N\space \%\space M}{M}\)

故可以将上式化为:\(\frac{N - N\space \%\space M}{M} (mod\space 10007)\)

可见我们需要求出 \(N\% 10007\)\(N\%M\)

根据题意:N 等于:

\[\sum_{i=1}^{k} c_{i} * \frac{10^{l_{i}}-1}{9} * 10^{suf_{i+1}} \]

为了方便叙述,令 \(K_{i} = c_{i}* 10^{suf_{i+1}}\),由于是求和式,我们可以对每一项独立计算,最后汇总。

因此只需要计算 \(K * \frac{10^{l_{i}}-1}{9} (mod\space 10007)\)\(K * \frac{10^{l_{i}}-1}{9} (mod\space M)\)

使用快速幂 \(qpow(x,p-2,p)\)\(x\)\(p\) 意义下的逆元,必须要求:\(p\)\(x\) 互质。

由于 \(10007\) 是质数,故 \(9\)\(10007\) 一定互质,可以求出 \(inv(9, 10007)\);而 \(M \le 10^{4}\),故 \(M\)\(10007\) 也一定互质,可以求出 \(inv(M,10007)\)。然而,在求解 \(K * \frac{10^{l_{i}}-1}{9} (mod\space M)\) 时,显然涉及到求 \(9\)\(M\) 意义下的逆元,而 \(9\)\(M\) 不一定互质,因此 \(inv(9,M)\) 不存在,需要换一种思路来求解 \(K * \frac{10^{l_{i}}-1}{9} (mod\space M)\)

\(S=K * \frac{10^{l_{i}}-1}{9}\),我们只需要计算 \(S\% M\)

虽然无法求出逆元,但是对于同余式,以下关系是始终成立的:

\[x \equiv y(mod\space p) \leftrightarrow kx \equiv ky(mod\space kp) \]

故:

\[S\equiv K * \frac{10^{l_{i}}-1}{9}(mod\space M) \rightarrow 9S\equiv K*(10^{l_{i}}-1) (mod\space 9M) \]

进而:

\[9S\space \%\space 9M = K*(10^{l_{i}}-1)\%\space (9M) \]

很容易证明 \(9S\space \%\space 9M = 9(S\%M)\),因此:

\[S\%M=\frac{K*(10^{l_{i}}-1)\%\space (9M)}{9} \]

以上转化,唯一目的就是为了将分母 \(9\) 消除,避免求解 \(9\)\(M\) 意义下的逆元。

(注意:对于计算 \(qpow(a, b, p)\),并不要求 \(a\)\(p\) 互质(只是在决定逆元是否存在时需要判断;即使 \(b=p-2\) 也无需在意,因为代表的含义不同:此时仅仅是求 \(a^{p-2} \% p\) 的值,并不涉及 \(a\)\(p\) 意义下的逆元这个含义)。因此仍然可以用 \(qpow(10, l_{i}, 9M)\) 来求 \(10^{l_{i}} \% \space 9M\)。)

code

F - Authentic Traveling Salesman Problem

利用了 莫队+奇偶性优化 的原理: 将 x 看作区间左端点,y 看作区间右端点,然后按照 x 方向分块,每一块内的点按照 y 交替升序与降序排序。模拟一下就会发现复杂度分析与莫队完全一致。

posted @ 2026-03-09 19:48  小橘奏  阅读(25)  评论(0)    收藏  举报