文档章节

Haskell分解质因数

hell0cat
 hell0cat
发布于 2016/08/12 22:55
字数 68
阅读 64
收藏 0
factors' n = if n <= 1  then [] else 
                    let fac = mfac n 2 in fac : factors' (n `div` fac) 
                        where mfac m x 
                                    | rem m x == 0   = x -- 能被整除,则x为因子
                                    | x^2 > m        = m -- 质数
                                    | otherwise      = mfac m (if odd x then x+2 else x+1)

main = do
    print $ factors' 557940830126698960967415390

输出:

[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71]

© 著作权归作者所有

共有 人打赏支持
hell0cat
粉丝 34
博文 47
码字总数 23694
作品 0
徐汇
程序员
经典算法详解(12)分解质因数

题目:众所周知,任何一个合数(因数不止是1和本身)都可以写成几个质数相乘的形式,这几个质数叫做这个合数的质因数。例如,24=2×2×2×3.把一个合数写成几个质数相乘的形式叫做分解质因数...

ysyouaremyall
07/17
0
0
bzoj4802欧拉函数【Rabin-Miller+pollard_rho】

解题思路: 直接把n用Rabin-Miller+pollardrho算法质因数分解(不会的可以看这里),用欧拉函数的计算式计算即可。 注意pollardrho算法会把n完全质因数分解,所以最后要去重。...

cdsszjj
01/12
0
0
量子计算将能分解任意极大整数,RSA加密或成摆设

就算是一台超级计算机有可能在数年的时间内计算出任意质因数,这也是得不偿失的。为了科学地解决这个问题,麻省理工学院(MIT)的科学家找到了明确的方法。今天,《科学》杂志最新发表的一篇...

雪花又一年
05/15
0
0
Python3 初学实践案例(11)判断质数以及计算一个数字的质因数

Python3 初学实践案例(11)判断质数以及计算一个数字的质因数 昨天晚上看到群里有人问如何计算质因数,我想了一下,实现了这个计算质因数的脚本。 质因数(素因数或质因子)在数论里是指能整...

FungLeo
2017/12/23
0
0
BJ模拟 Period on tree【树状数组+哈希】

题目描述: 给定一棵 N 个节点的无根树,每条边上有一个小写英文字母。每次我们选择两个不同的节点 u 和 v,然后依次写下从 u 到 v 的最短路径上每条边上的字母,我们就能得到这条路径对应的...

cdsszjj
04/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

这些Spring中的设计模式,你都知道吗?

设计模式作为工作学习中的枕边书,却时常处于勤说不用的尴尬境地,也不是我们时常忘记,只是一直没有记忆。 Spring作为业界的经典框架,无论是在架构设计方面,还是在代码编写方面,都堪称行...

Java填坑之路
27分钟前
1
0
Spring Aop原理之Advisor过滤

在上文(Spring Aop之Advisor解析)中我们讲到,Spring Aop对目标bean的代理主要分为三个步骤:获取所有的Advisor,过滤当前bean可应用的Advisor和使用Advisor为当前bean生成代理对象,并且上文...

爱宝贝丶
38分钟前
0
0
JMockit学习教程

1 JMockit中文网 我觉得如果仅仅是开发自测的话,把JMockit中文网认真看一遍,就可以在项目中使用JMockit了。 http://jmockit.cn/index.htm 2 JMockit中文教程 官方文档中文版。对于不喜欢看...

SuperHeroes
50分钟前
0
0
Linux服务器几乎从不采用Arch Linux?

我们见得多的Linux服务器系统一般都是什么Ubuntu Server啊,什么Cent OS啊,什么Fedora啊,或者企业采用的Red Hat啊,为什么几乎没有Arch Linux呢?下面我将从若干个方面指出Arch Linux在服务...

linux-tao
今天
0
0
js 函数柯里化 闭包

参考 https://mp.weixin.qq.com/s/GEHL3jarDdAAcr5tQGjmDg 一个统计求和的函数 需要知道整个数组的信息,然后遍历求值 function countMoney() { let money = 0 // 温馨提示:arguments...

阿豪boy
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部