CF710D Two Arithmetic Progressions

直接分治。

  • 若 max⁡(a1,a2)<103\max(a1,a2) < 10^3,枚举 x∈[l,l+a1×a2]x \in [l,l+a1\times a2],对于符合条件的,答案累加 ⌊r−xa1×a2⌋+1\lfloor\frac{r-x}{a1\times a2}\rfloor+1,时间复杂度 O(a1×a2)\mathcal O(a1\times a2)。
  • 否则,暴力枚举所有满足第二个条件的数,判断一下是否可行即可,时间复杂度 O(r−la2)\mathcal O(\frac{r-l}{a2})。

总时间复杂度 O(可过)\mathcal O(可过)。

posted @ 2022-12-01 08:51  蒟蒻orz  阅读(31)  评论(0)    收藏  举报  来源