Euler devised the following quadratic equation:
n**2 + n + 41
.
This formula produces 40 prime numbers when n is a continuous integer from 0 to 39. However, when n = 40, 40 ** 2 + 40 + 41
= 40 (40 + 1). ) + 41
, which is divisible by 41. Also, when n = 41, it is 41 ** 2 + 41 + 41
, which is clearly divisible by 41.
Using a calculator, we found the quadratic expression n ** 2-79 * n + 1601
. It produces 80 prime numbers with consecutive integers from n = 0 to 79. The product of the coefficients. Is -79 x 1601 and -126479.
Now, |a| < 1000, |b| <Consider the following quadratic equation as 1000(here|a|Is the absolute value):For example|11| = 11 |-4| =4.
n**2 + a*n + b
Answer the product of the coefficients a and b in the above quadratic equation, which has the longest length when a prime number is generated with consecutive integers starting from n = 0.
http://odz.sakura.ne.jp/projecteuler/index.php?cmd=read&page=Problem%2027
Full-text search as told. Probably not good. Click here for mymath http://qiita.com/cof/items/45d3823c3d71e7e22920
import mymath
def f(n,a,b):
return n**2 + a * n + b
def cof():
P_MAX = 10 ** 6
pri = mymath.get_primes(P_MAX)
max_n = 0
ans = 0
seq = range(-1000,1001)
for a in seq:
for b in seq:
n = 0
while pri['bool'][f(n,a,b)]:
n += 1
if n > max_n:
max_n = n
ans = a*b
print ans
It's late, like a mountain.
Recommended Posts