Skip to content

Commit 66a528b

Browse files
Improve Project Euler problem 014 solution 2 (TheAlgorithms#4752)
1 parent 15d1cfa commit 66a528b

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

project_euler/problem_014/sol2.py

+6-6
Original file line numberDiff line numberDiff line change
@@ -28,16 +28,16 @@
2828
from __future__ import annotations
2929

3030

31-
def collatz_sequence(n: int) -> list[int]:
32-
"""Returns the Collatz sequence for n."""
33-
sequence = [n]
31+
def collatz_sequence_length(n: int) -> int:
32+
"""Returns the Collatz sequence length for n."""
33+
sequence_length = 1
3434
while n != 1:
3535
if n % 2 == 0:
3636
n //= 2
3737
else:
3838
n = 3 * n + 1
39-
sequence.append(n)
40-
return sequence
39+
sequence_length += 1
40+
return sequence_length
4141

4242

4343
def solution(n: int = 1000000) -> int:
@@ -54,7 +54,7 @@ def solution(n: int = 1000000) -> int:
5454
13255
5555
"""
5656

57-
result = max((len(collatz_sequence(i)), i) for i in range(1, n))
57+
result = max((collatz_sequence_length(i), i) for i in range(1, n))
5858
return result[1]
5959

6060

0 commit comments

Comments
 (0)