摘要: 思路很简单,就是用n除以从2开始的数(把这个数设为i),如果除的尽,那么i就是n的一个质因数, 然后用n/=i,如果此时n<i那么直接结束循环,否则把i赋为2重复这一过程(每一次循环都能找出最小的那个质因数) 当然如过n是一个很大的质数,复杂度还是会退化到O(n) 所以我们每次都要判断一下n是不是一 阅读全文
posted @ 2019-04-15 21:02 没有名字的怪物 阅读(2838) 评论(0) 推荐(1)
摘要: 对于每一个大于等于5的数,它只有在6的两侧才可能是素数 因为大于等于5的数可以表示为6x-1,6x,6x+1,6x+2,6x+3,6x+4,6x+5.... 而6x,6x+2=2(3x+1),6x+3=3(x+1),6x+4=2(3x+2)都不可能是素数, 所以我们对于一个数n,直接先判断它模6是否 阅读全文
posted @ 2019-04-15 20:39 没有名字的怪物 阅读(2042) 评论(0) 推荐(0)