#!/usr/bin/ruby
func a(k, x1, x2, x3, x4, x5) is cached -> Number {
func b() -> Number { a(--k, b, x1, x2, x3, x4) };
k <= 0 ? (x4.run + x5.run) : b();
}
assert_eq(a(10, {1}, {-1}, {-1}, {1}, {0}), -67);
say "** Test passed!";
#!/usr/bin/ruby
func a(k, x1, x2, x3, x4, x5) is cached -> Number {
func b() -> Number { a(--k, b, x1, x2, x3, x4) };
k <= 0 ? (x4.run + x5.run) : b();
}
assert_eq(a(10, {1}, {-1}, {-1}, {1}, {0}), -67);
say "** Test passed!";