A
(a) 中第 (i) 小的配 (b) 中第 (i) 大的。
限制相同,这样配最平均。
时间复杂度 (Oleft(tnlog n ight))。
B
最终的一百名至少是第一场的一百名或是第二场的一百名。
而两人的得分分别是 (a+b) 和 (c+d),取 (min) 即可。
时间复杂度 (Oleft(t ight))。
C
满足条件的 (x) 肯定存在某个质因数的个数小于该因数在 (q) 中的个数。
先判断 (p) 是否被 (q) 整除,如果否就直接输出 (p)。
这样就保证了 (q) 有的所有因数 (p) 中都有且个数相同或更多。
然后枚举 (q) 的每个因数,尝试将 (p) 中该因数的个数降至 (q) 中该因数的个数减一。
时间复杂度 (Oleft(tsqrt q ight))。
D
因为两个数列都会排好序,所以是这个样子的:
红色的代表差。
最大的 (n) 个数必定是加,最小的 (n) 个数必定是减。
然后随便算一算方案数就好了。
时间复杂度 (Oleft(nlog n ight))。
之后的题都鸽了。