题意 : 记 ,即
在十进制下的位数。
给出 ,求满足下列条件的数对
的个数 :
答案对 取模。
,时限 。
这里有一个 且
组数据的加强版 : Link
由于
是单调递增的上凸函数,在合法方案中,当 增大时, 减小。
枚举 的值。 的 的数目为 。
若 是 的因数,则选取一个长为 的区间即可满足题意。
故方案数为:
大力求因数,复杂度为 。
枚举 。设区间中 的有 个, 的有 个。
为了与 Case 1 区分,这里要求 。且由于个数限制也有 。
化式子 :
注意到当确定 之后就能确定
,故只需计数合法的 的个数。
由 ,可得 。
解得 。
还要考虑
的上界,将上界代入并用得到的
修正上述范围。
注意到当
时,这两个条件必定能满足,所以只有很小一部分 需要修正。
其他的部分为
也只需统计因数。
枚举 ,枚举 ,则 。
由于此时我们跨越了至少一整段, 的范围都是 ,枚举量是很小的。
设区间中 的有 个, 的有 个。
此时仍然有 。
计算出中间整段的 的和 ,记 。则有 。
问题转化为 : 给出不定方程 ,求解 (在一定范围内)的对数。
记 ,若 ,则无解。否则将 除以 转化为 的情况。
用 得到特解 (注意可能无解),则通解为
将范围不等式的四个边界分别代入,即可得知方案数。
这部分的复杂度为 。