Problema
Mostra originale (inglese)Inizia la sequenza con 1 e 2. Ogni termine successivo è la somma dei due precedenti. Considera solo i termini di valore pari che non superano il limite, poi somma questi valori.
Implementa even_fibonacci_sum(limit).
Input
limit: Il valore massimo che un termine può avere per essere incluso.
Output
Restituisci la somma, oppure 0 se non ci sono termini idonei.
Vincoli
0 ≤ limit ≤ 10¹⁵. Il risultato rientra in un intero con segno a 64 bit.
Esempi
Input:
limit = 50
Output atteso:
expected = 44
Input:
long long limit = 50;
Output atteso:
long long expected = 44;
Input:
long limit = 50;
Output atteso:
long expected = 44;
Spiegazione
I termini pari sono 2, 8 e 34. La loro somma è 44.
Input:
limit = 1
Output atteso:
expected = 0
Input:
long long limit = 1;
Output atteso:
long long expected = 0;
Input:
long limit = 1;
Output atteso:
long expected = 0;
Spiegazione
Il primo termine pari è 2, che supera il limite.
Riferimenti
Questa sfida è adattata per CodeUtility. Segui la traccia e i vincoli sopra.