We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 15d1cfa commit 66a528bCopy full SHA for 66a528b
project_euler/problem_014/sol2.py
@@ -28,16 +28,16 @@
28
from __future__ import annotations
29
30
31
-def collatz_sequence(n: int) -> list[int]:
32
- """Returns the Collatz sequence for n."""
33
- sequence = [n]
+def collatz_sequence_length(n: int) -> int:
+ """Returns the Collatz sequence length for n."""
+ sequence_length = 1
34
while n != 1:
35
if n % 2 == 0:
36
n //= 2
37
else:
38
n = 3 * n + 1
39
- sequence.append(n)
40
- return sequence
+ sequence_length += 1
+ return sequence_length
41
42
43
def solution(n: int = 1000000) -> int:
@@ -54,7 +54,7 @@ def solution(n: int = 1000000) -> int:
54
13255
55
"""
56
57
- result = max((len(collatz_sequence(i)), i) for i in range(1, n))
+ result = max((collatz_sequence_length(i), i) for i in range(1, n))
58
return result[1]
59
60
0 commit comments