欧拉工程-问题7
原题链接 http://projecteuler.net/problem=7
10001st prime
By listing the first six prime numbers: 2, 3, 5, 7, 11, and 13, we can see that the 6th prime is 13.
What is the 10 001st prime number?
第10001个素数
列出前六个素数:2, 3,5, 7, 11,和13,我们可以知道第6个素数是13.
求第10001个素数。
解答:
没有想到什么好的方法,就用暴力解决。经过观察,对于大于6的正整数都可以用6n,6n + 1,6n + 2,6n + 3,6n + 4,6n + 5表示,其中只有6n + 1,6n + 5有可能是素数。所以可以用一个step变量来记录下一跳的步数,保证需要判断的数字在6n + 1和6n + 5中变换。要判断一个正整数是否是素数,只需用比它的平方根小的所有素数去除它,如果它可以被其中一个整除,则是素数,否则不是。