zoukankan      html  css  js  c++  java
  • 筛法的一些技巧

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

    大家都会筛法吧..

    筛k×n+t形式的素数,k,t给定

    比如说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的数..

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

    筛法是可以并行的

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

  • 相关阅读:
    偶然闪退的排查
    ANTI-INFLAMMATORY FOODS
    健康餐
    PSORIASIS-7 THINGS TO AVOID
    eczema: improve or reverse your eczema
    VL10 or VL10A前台操作
    装修设计
    春运高速记录 1/15/2020
    rman 备份并异机恢复
    RMAN冷备份、一致性备份脚本
  • 原文地址:https://www.cnblogs.com/tmzbot/p/6685462.html
Copyright © 2011-2022 走看看