created and first commit(3 solusions)

This commit is contained in:
2025-11-26 15:31:14 +08:00
commit d1af6aa880
11 changed files with 259 additions and 0 deletions

View File

@@ -0,0 +1,48 @@
"""
Even Fibonacci Numbers
Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be:
1, 2, 3, 5, 8, 13, 21, 34, 55, 89
By considering the terms in the Fibonacci sequence whose values do not exceed four million, find the sum of the even-valued terms.
"""
UP_NUM = 4000000
def is_even(num: int) -> bool:
"""Check if a number is even."""
return num & 1 == 0
"""
下面这个方法实在太慢计算400万项还会内存溢出。
```python
def fibonacci_sequence(n: int) -> list[int]:
a, b = 1, 2
res = [a, b]
while b <= n:
a, b = b, a + b
res.append(b)
return res
def main():
fib_seq = fibonacci_sequence(UP_NUM)
even_sum = sum(num for num in fib_seq if is_even(num))
print(even_sum)
```
"""
def even_fibonacci(limit: int) -> int:
a, b = 1, 2
even_sum = 0
while b <= limit:
if is_even(b):
even_sum += b
a, b = b, a + b
return even_sum
if __name__ == "__main__":
print(even_fibonacci(UP_NUM))