Начните последовательность с 1 и 2. Каждый следующий член равен сумме двух предыдущих. Включайте только чётные члены, не превышающие limit, затем сложите их.
Реализуйте функцию even_fibonacci_sum(limit).
Входные данные
limit: Максимальное значение члена, который может быть включён.
Выходные данные
Верните сумму, либо 0, если подходящих членов нет.
Ограничения
0 ≤ limit ≤ 10¹⁵. Результат помещается в знаковый 64-битный целый тип.
Примеры
Ввод:
limit = 50
Ожидаемый вывод:
expected = 44
Ввод:
long long limit = 50;
Ожидаемый вывод:
long long expected = 44;
Ввод:
long limit = 50;
Ожидаемый вывод:
long expected = 44;
Пояснение
Чётные члены: 2, 8 и 34. Их сумма — 44.
Ввод:
limit = 1
Ожидаемый вывод:
expected = 0
Ввод:
long long limit = 1;
Ожидаемый вывод:
long long expected = 0;
Ввод:
long limit = 1;
Ожидаемый вывод:
long expected = 0;
Пояснение
Первый чётный член — 2, который превышает предел.
Ссылки
Это задание адаптировано для CodeUtility. Следуйте условию и ограничениям выше.