diff options
| author | Charles <sircharlesaze@gmail.com> | 2019-11-18 23:22:33 +0100 |
|---|---|---|
| committer | Charles <sircharlesaze@gmail.com> | 2019-11-18 23:22:33 +0100 |
| commit | 8d23cd41eb9f4e0cf06715abe27c3999aa80aee9 (patch) | |
| tree | 119ffa6f073c2e2c43c0c6b0d684213b6c507016 /python | |
| parent | fbf74073aeebe4cf64481802c9871012b615d9e7 (diff) | |
| download | project_euler-8d23cd41eb9f4e0cf06715abe27c3999aa80aee9.tar.gz project_euler-8d23cd41eb9f4e0cf06715abe27c3999aa80aee9.tar.bz2 project_euler-8d23cd41eb9f4e0cf06715abe27c3999aa80aee9.zip | |
problem 50 python
Diffstat (limited to 'python')
| -rw-r--r-- | python/038-pandigital_multiples.py | 18 | ||||
| -rw-r--r-- | python/050-consecutive_prime_sum.py | 31 | ||||
| -rw-r--r-- | python/wip/026-reciprocal_cycles.py | 5 |
3 files changed, 49 insertions, 5 deletions
diff --git a/python/038-pandigital_multiples.py b/python/038-pandigital_multiples.py new file mode 100644 index 0000000..be8fedc --- /dev/null +++ b/python/038-pandigital_multiples.py @@ -0,0 +1,18 @@ +# ### +# Pandigital multiples +# Problem 38 +# +# Take the number 192 and multiply it by each of 1, 2, and 3: +# 192 × 1 = 192 +# 192 × 2 = 384 +# 192 × 3 = 576 +# By concatenating each product we get the 1 to 9 pandigital, 192384576. We will call 192384576 the concatenated product of 192 and (1,2,3) +# The same can be achieved by starting with 9 and multiplying by 1, 2, 3, 4, and 5, giving the pandigital, 918273645, which is the concatenated product of 9 and (1,2,3,4,5). +# What is the largest 1 to 9 pandigital 9-digit number that can be formed as the concatenated product of an integer with (1,2, ... , n) where n > 1? +# ### + + +def concatenated_prod(n): + cprod = "" + + diff --git a/python/050-consecutive_prime_sum.py b/python/050-consecutive_prime_sum.py new file mode 100644 index 0000000..0fde061 --- /dev/null +++ b/python/050-consecutive_prime_sum.py @@ -0,0 +1,31 @@ +# ### +# Consecutive prime sum +# Problem 50 +# +# The prime 41, can be written as the sum of six consecutive primes: +# 41 = 2 + 3 + 5 + 7 + 11 + 13 +# This is the longest sum of consecutive primes that adds to a prime below one-hundred. +# The longest sum of consecutive primes below one-thousand that adds to a prime, contains 21 terms, and is equal to 953. +# Which prime, below one-million, can be written as the sum of the most consecutive primes? +# ### + + +from helper.prime import primes_loop, is_prime + + +sumed = [] +ps = [] +max_len = 0 +for p in primes_loop(): + if p > 20000: + break + ps.append(p) + for i in range(len(ps)): + s = sum(ps[i:]) + if s > 1000000: + break + if is_prime(s) and len(ps) > max_len: + sumed.append(s) + max_len = len(ps) + +print(sumed[-1]) diff --git a/python/wip/026-reciprocal_cycles.py b/python/wip/026-reciprocal_cycles.py deleted file mode 100644 index b502c9a..0000000 --- a/python/wip/026-reciprocal_cycles.py +++ /dev/null @@ -1,5 +0,0 @@ -from decimal import Decimal - -for i in range(1, 11): - # decimals = int(str(1/i)[2:]) - print(d) |
