又有点时间没有写东西了我来讲点trick..对就是水一篇..

大家都会筛法吧..

比如说6n+1形式的(大雾)

你考虑筛法的本质是找出p mod k×n+t=0的那些k×n+t<=Upper_Bound的那些n,它们步长间隔是相同的..

这样就可以方便的筛了..

复杂度是O((n=Upper_Bound/k)loglogn+sqrt(Upper_Bound))..大概..?

筛一段中的素数,比如[1e16,1e16+1e8]

同样的,反正你只需要把<=sqrt(Upper_Bound)的素数筛掉就好了..

Wheel Factorization

大概就是你可以预处理一个婊,对mod 2,3,5,7,...,一个小素数不对的那些就不枚举了

筛B-smooth number(某个形式的,比如f(x)=x²-t)

如果f(x)=f(x+p) (mod p),我们又可以快乐的筛筛筛啦..不过现在是在用筛法分解..

最后再用试除法/Pollard Rho/ECM把那些likely to be smooth的数分解一遍..

我好像还没说B-smooth是什么..?就是所有素因子都<=B的数..

这东西在质因数分解和离散对数(似乎差不多不管了)里还是发挥了不少作用的..

筛法是可以并行的

理由同筛一段中的素数..

相关文章:

  • 2021-09-28
  • 2021-06-26
  • 2022-01-22
  • 2021-07-23
  • 2021-10-22
  • 2021-08-25
  • 2021-08-16
  • 2021-12-31
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-02-07
  • 2021-11-06
  • 2021-08-08
相关资源
相似解决方案