首页 > 代码库 > 在GitHub上挖了两个坑
在GitHub上挖了两个坑
https://github.com/baihacker/pe
解决Project Euler上的问题的基础代码, 含数论代码和一个简单的多线程工具(为了计算出结果,最长的时候跑过一天半,所以开多线程有可能会减少几倍时间).
目前只有一些简单的筛选素数,分解整数,模运算,原根判断,找素数的原根,离散对数,分数计算. 算法也基本上用的是最朴素的.
接口设计主要考虑效率,提供C形式的库函数.在可控制的范围内,接口根据效率划分层次.另外还应该考虑库的线程安全性,以有利于多线程猥琐流.
计划慢慢使用C++,加上非朴素算法,一些初等数论中的其它算法,还有添加解决一些基础问题的python代码.
/* static int plist[maxp/10]; static int pmask[maxp+1]; static int pcnt; int* phi = NULL; int* miu = NULL; const int64 pmpi[]; SL int64 estimate_pmpi(int64 n) SL int is_prime(int64 n) SL void init_primes() SL void init_primes(int cal_phi, int cal_miu) SL vector<pair<int64, int> > factorize(int64 n) SL vector<int64> get_factors(const vector<pair<int64, int> >& f) SL vector<int64> get_factors(int64 value) SL int64 square_root(int64 n) SL int64 add_mod(int64 a, int64 b, int64 mod) SL int64 sub_mod(int64 a, int64 b, int64 mod) SL int64 mul_mod(int64 a, int64 b, int64 mod) SL int64 mul_mod_ex(int64 a, int64 b, int64 mod) SL int64 power_mod(int64 x, int64 n, int64 mod) SL int64 power_mod_ex(int64 x, int64 n, int64 mod) SL int64 inv_of(int64 x, int64 p) // Primitive Root namespace pr{ SL bool is_pr(const vector<pair<int64, int> >& f, int64 x, int64 p) SL bool is_pr(int64 x, int64 p) SL int64 find_pr(int64 p) int64 ind(int64 a, int64 pr, int64 p) int64 ind1(int64 a, int64 pr, int64 p) } template<typename T> struct Fraction; */
https://github.com/baihacker/dcfpe
刚YY的分布式计算工具. 将多线程猥琐流提升到分布式猥琐流.
目前只有个简介,没有任何代码,
至于什么时候写,再说吧.
在GitHub上挖了两个坑
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。