Project Euler/500: Difference between revisions
From charlesreid1
m (Admin moved page Project Euler/Smallest Number with 2n Factors to Project Euler/500) |
No edit summary |
||
| Line 5: | Line 5: | ||
n, n^2, n^4, n^8, n^16, ... | n, n^2, n^4, n^8, n^16, ... | ||
Build a generator to generate these numbers dynamically. | |||
* Wait... what we're building is... uh... the integers in order. | |||
List of primes - that's the first column. | |||
List of queues or sub-generators, each accessing the list of primes and an internal counter | |||
How many primes up do we go for each column? | |||
* If the number we are considering is above p, then we want to include p in the queue of primes that will be served up. | |||
* If the number we are considering is above p^2, then we want to include p^2 in the queue of primes that will be served up. | |||
* etc... | |||
Take the first element in the primes array, square it, and if we're above that, include it | |||
{{ProjectEulerFlag}} | {{ProjectEulerFlag}} | ||
Revision as of 11:02, 14 July 2017
To find the smallest number with 2^n divisors:
Building a table with columns:
n, n^2, n^4, n^8, n^16, ...
Build a generator to generate these numbers dynamically.
- Wait... what we're building is... uh... the integers in order.
List of primes - that's the first column.
List of queues or sub-generators, each accessing the list of primes and an internal counter
How many primes up do we go for each column?
- If the number we are considering is above p, then we want to include p in the queue of primes that will be served up.
- If the number we are considering is above p^2, then we want to include p^2 in the queue of primes that will be served up.
- etc...
Take the first element in the primes array, square it, and if we're above that, include it