use crate::utils;
fn even_fibo_under(limit: usize) -> usize {
let mut fibo = utils::Fibonacci { curr: 1, next: 2 };
let mut sum = 0;
loop {
let c = fibo.next().unwrap();
if c > limit {
break;
}
if c % 2 == 0 {
sum += c;
}
}
sum
}
pub fn solve() -> String {
even_fibo_under(4000000).to_string()
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_example() {
assert_eq!(even_fibo_under(100), 44);
}
}