blob: 74d5e1e9a89e30b64cde693a0c9bb1fe1f524310 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
import PIL
import math
# Problem 14 Longest Collatz sequence
# Note, a little slow, takes about 15 seconds.
# There is probably a more efficient solution out there
chain = []
biggo = []
def collatz(seed):
chain.append(seed)
if(seed == 1):
return 0
if(seed % 2 == 0):
seed = seed/2
else:
seed = 3*seed + 1
collatz(seed)
for n in range(1, pow(10, 6)):
collatz(n)
if(len(chain) > len(biggo)):
biggo = chain
chain = []
print(biggo)
print("Has " + str(len(biggo)) + " numbers.")
|