ARC200 A~C

ARC200 A~C

数学思维场,数学不好的有福了,喜提 -60

Problem A. A - Dot Product

观察样例,发现有无解。设 \(C_i=\dfrac {A_i}{B_i}\),手磨一下,如果 \(C_i\) 全部相同,那么 \(B\) 总和一定是 \(A\) 总和的正整数倍,也就是二者一定同正同负。

这启发我们,构造过程中我们应该是需要一组 \((i,j)\),满足 \(C_i\neq C_j\)

\(n\) 个元素太难做了,试试 \(2\) 个元素。设它为 \((i,j)\)

现在我们需要找到 \(X_i,X_j\),满足 \(A_iX_i+A_jX_j>0,B_iX_i+B_jX_j<0\)

变形得到 \(\dfrac {B_i}{B_j} < -\dfrac{X_j}{X_i}<\dfrac {A_i}{A_j}\)。取 \(X_i=A_j+B_j,X_j=-(A_i+B_i)\) 可以成立,前提是 \(\dfrac {B_i}{B_j} < \dfrac {A_i}{A_j}\),即 \(C_i>C_j\)

于是找到这样的 \((i,j)\) 就做完了。

Problem B. B - LCM

下面称 \(A_1=A,A_2=B,A_3=C\)

首先排除掉无解的情况:\(\max(A,B)>C\)\(A+B<C\)

然后开始打表,发现有这样几组特殊的:

3 3 4
100 990 9900
3 4 5
100 9900 99900
3 4 6
100 9999 999900
4 4 5
1000 9900 99000
4 4 6
1000 9990 999000

由对称性设 \(A\leq B\)。可以构造 \(X=10^{A-1},Y=10^{B}-10^{B-C+A-1}\)

我们令 \(X=10^{A-1}\)\(Z\)\(C-A+1\)\(9\)\(A-1\)\(0\)。那么 \(Y\) 就应该是 \(C-A+1\)\(9\)\(B-C+A-1\)\(0\)

但是当 \(A+B=C\) 时这个方法行不通。继续打表,\(\gcd(10^A-1,10^B-2),\gcd(10^A-2,10^B-1)\) 至少有一个是 \(1\),直接输出即可。

Problem C. C - Movie Theater

考虑两个线段 \([L_i,R_i],[L_j,R_j]\)。设 \(i\) 的长度大于 \(j\)

分三种情况:

  1. 二者无交集,无需考虑;
  2. 二者相交但不包含,固定产生 \(1\) 的贡献;
  3. \(j\) 包含于 \(i\),我们需要 \(P_j<P_i\)

所以我们只有一种限制:若 \(j\) 包含于 \(i\),则 \(P_j<P_i\)

\(j\)\(i\) 连有向边,形成一张 DAG。转化为求 逆排列字典序最小 的拓扑序。

由字典拓扑原理,其等价于在反图上求字典序最大的拓扑序。优先队列维护,\(O(n^2\log n)\)

posted @ 2025-06-17 21:40  XP3301_Pipi  阅读(24)  评论(0)    收藏  举报
Title